Это довольно забавно, есть много способов, которыми инструменты командной строки Linux значительно превосходят инструменты Windows, но я не нашел эквивалента в Робокопии. Robocopy более универсален, чем cp
, и я не могу понять, как делать то, что я хочу, с инструментами Linux.
Конкретный вариант использования состоит в том, что у меня есть две директории с почти одинаковыми файлами, но одна имеет более новые исходные файлы, а другая содержит файлы содержимого, которых нет в другом каталоге, и, возможно, более новые исходные файлы (для веб-сайта). Я хочу скопировать файлы из последнего каталога в первый, добавив новые файлы содержимого и тому подобное, но не перезаписывая новые файлы в целевом каталоге.
Я попытался выяснить, как сделать это в Linux, возможно, в течение получаса, решил, что мне, вероятно, придется изучить скрипты bash или что-то, чтобы делать то, что я хотел, и тогда я понял, что могу просто использовать robocopy. У меня также были некоторые другие требования. Я в основном конвертировал веб-сайт Python (Django) из репозитория SVN в репозиторий Git, и я хотел убедиться, что у меня не было внесенных изменений в SVN. Однако я хотел условно исключить .svn
и скомпилированные файлы Python .pyc
. Следующая команда robocopy делает именно то, что я хочу:
robocopy source destination /XO /E /XD .svn /XF *.pyc
Есть ли какой-нибудь эквивалент Robocopy в Linux? Я кратко изучил rsync
, но мне показалось, что мне нужно настроить сервер rsync, прежде чем пытаться синхронизировать папки.