Я могу скопировать несколько каталогов в единственный каталог с единственной командой?

Я бы предпочел бы клонировать это Git . А потом сделать Git diff --stat

$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git`
$ cd linux-stable/
$ git diff --stat v3.18.6 v3.18.7

-1
04.01.2015, 00:05
2 ответа

Первое решение, которое я думал, это rsync. Исключить все. Включите каталоги, соответствующие шаблону. Я признаю, что чувствует себя странно копировать информацию на тот же хост, используя rsync. Обычно это используется для копирования на удаленный компьютер. Однако не вижу причин, почему вы не могли просто скопировать в Localhost.

rsync -ravz --include '/home/ray/recup_dir.*' --exclude '*' user@localhost

Объяснение Рава:

-r recursive copy
-v verbose
-a : archive mode. Preserves symbolic links, file permissions, user & group ownerships,  timestamps
-z : compress file data


Второй вариант - обманывать и набирать MC . Это начнет Midnight Commander , позволяющий выбрать несколько каталогов, а затем скопировать их.


Третий вариант: найти.

find /home/ray/recup_dir.\*  -exec cp {} /media/ray/"Seagate Expansion Drive"/RecupsA \;


Четвертый вариант: используйте оболочку. Перейти к / Home / Ray / а затем

for a in recup* ; do cp -r $a /media/ray/"Seagate Expansion Drive"/RecupsA; done
2
28.01.2020, 05:07

Использование стандарта CP CP с r r r Ecurkive Option:

cp -r /home/ray/recup_dir.{1..598} "/media/ray/Seagate Expansion Drive/RecupsA"

Но у меня есть ощущение, что вы скорее хотите перемещать их в таком случае:

mv /home/ray/recup_dir.{1..598} "/media/ray/Seagate Expansion Drive/RecupsA"

Оба эти команды относятся только к последнему аргументу, как пункты назначения , и все предыдущие источники (файлы или каталоги).

2
28.01.2020, 05:07

Теги

Похожие вопросы