Я склонен согласиться с ответом rsync
, если у вас большие деревья файлов
управлять, но вы можете использовать флаг -u (--update) для cp, чтобы скопировать
файл (ы) заканчиваются, только если источник новее, чем пункт назначения.
cp -u
Редактировать
Поскольку вы обновили вопрос, чтобы указать, что вы хотели бы принять
некоторые дополнительные действия, вы захотите использовать проверку -nt
во встроенной команде [
(test
):
#!/bin/bash
if [ $1 -nt $2 ]; then
echo "File 1 is newer than file 2"
else
echo "File 1 is older than file 2"
fi
со страницы руководства:
file1 -nt file2
True if file1 is newer (according to modification date) than
file2, or if file1 exists and file2 does not.
Надеюсь, это поможет.