Ответы:
Если я читаю ваши требования правильно, нет никаких файлов , которые идут от foo
к bar
. Похоже, что вы можете просто скопировать содержимое bar
в foo
, позволяя перезаписывать файлы по мере необходимости (его поведение по умолчанию).
$ cp -R /path/to/bar/* /path/to/foo
cp -R /path/to/bar /path/to/foo
это будет создать каталог bar
внутри foo
. Тонкий момент.
bar
(т.е. с именами, начинающимися с точки - .
) из-за того, как работает глобализация оболочки.
У меня был очень похожей необходимость: слияние bar
в foo
но файлы , которые находятся в bar
не должен перезаписи согласующих файлов foo
. В таком случае:
$ cp -R -n /path/to/bar/* /path/to/foo/
Попробуй это :
$ cp -r
-u
-v /path/to/foo/* /path/to/bar/
Из man cp
-u, --update
копировать только в том случае, если файл SOURCE новее, чем целевой файл, или если в конечном файле отсутствуют рекурсивные каталоги
-R, -r, --recursive.
man cp
-> -u, --update: копировать, только если файл SOURCE новее, чем файл назначения, или когда файл назначения отсутствует