1

Я хочу выполнить копию файла, как:

cp --verbose /srcfile /dstfile

Но я хочу выполнить копирование только в том случае, если dstfile не существует или размер файла dstfile отличается от размера файла srcfile .

Как это сделать, используя, например, cp или другой распространенный инструмент для копирования файлов в bash?

1 ответ1

0

На самом деле не самый элегантный способ:

if [ -e /dstfile ] ; then
 destsize=$(stat -c %s /dstfile)
 srcsize=$(stat -c %s /srcfile)
 if [ "$srcsize" -ne "$destsize" ] ; then
   cp --verbose /srcfile /dstfile
 fi
fi

Вы также можете попытаться привыкнуть к rsync

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .