Перейти к содержанию

копирование структуры


Рекомендуемые сообщения

Проблема следующая:

Необходимо реализовать сценарий на диалекте языка

командного интерпретатора bash, производящий копирование

структуры заданной директории (и всех поддиректорий)

в целевую директорию.

Входные параметры:

- <директория> - задаваемая исходная директория.

- <целевая директория> - задаваемая целевая директория.

Причем файлы в целевую директорию копировать не надо, а только

все имеющиеся директории и поддиректории

Ссылка на комментарий
Поделиться на другие сайты

Это просто, однако я очень не люблю помогать людям, которые палец о палец ударить не хотят

Напишите как Вы пытались решить проблему сами

Успехов

--- sas

Ссылка на комментарий
Поделиться на другие сайты

Я решал следующим образом:

touch /bin/my_bash_script создаем файл my_bash_script

chmod u=rwx, g=rwx, o=rwx /bin/my_bash_script присваиваем ему

атрибуты

mcedit /bin/my_bash_script открываем на редактирование

#!/bin/bash

case word in

Help-)

echo "ввести исходную и целевую директорию"

esac

for i in $1/*

if [-d$i] then cp -R $i $dir2

fi

done

$1 - исходная директория

$dir2 - целевая директория

Проблема в том, что команда cp копирует все вместе с файлами

Ссылка на комментарий
Поделиться на другие сайты

Спасибо за помощь

Хочу уточнить

Получается если я правильно понял

то данный скрипт будет работать

если sourse/path имеет один уровень вложенности

или не так?

Ссылка на комментарий
Поделиться на другие сайты

Хорошо

[sas@sas-tibook:sas]$ src_dir="./Movies"

[sas@sas-tibook:sas]$ trg_dir="./tmp"

[sas@sas-tibook:sas]$ find "$src_dir" -type d | sed 's@^'"$src_dir"'@' "$trg_dir"'@' | xargs mkdir -p

[sas@sas-tibook:sas]$

В этом решении только поддиректории src_dir будут скопированы

Успехов

--- sas

PS Кстати в Вашем решении только один уровень поддиректориев будет создан

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...