Как мне скопировать файл в Linux, только если копируемый файл новее, чем версия в месте назначения?
Если файл в месте назначения более новый, я хочу, чтобы копия файла не выполнялась.
Использование опции обновления (-u) с cp должно сделать это за вас.
http://beginnerlinuxtutorial.com/help-tutorial/basic-linux-commands/cp-linux-copy-command/
-u
опции нет. Вы можете использоватьrsync --update
вместо этого.Используйте rsync
источник
-r
означает рекурсивную операцию в подкаталогах и-u
сохранение новых файлов в месте назначения (= update).--progress
показывает информацию о прогрессе во время работы.Вы не говорите, какую оболочку вы используете, поэтому я собираюсь предположить
ksh
:источник
yes|cp -ruv /from/* /to/.
да - ответь да на все вопросы.
r - рекурсивный
u - обновление
v - прогресс
работает как xargs .
Я не знаю, как объяснить академически.
Как заставить cp перезаписать без подтверждения
источник