пытаюсь написать простой сценарий сравнения, чтобы сравнить 2 файла, а затем перенести их в каталог

Вы можете использовать vi для решения обеих проблем если они существуют:

vi <your_file>
:set ff=unix
:set nobomb
:wq
0
08.02.2017, 21:38
2 ответа

, если принимает произвольную команду, поэтому вы можете просто использовать diff без каких-либо кавычек или подстановки команд. Кроме того, мы могли бы использовать флаг -q , чтобы запретить вывод.

if diff -q "$file1" "$file2" ; then
    echo "files $file1 and $file2 contain identical data"
else
    echo files differ (or an error happened)
fi
2
28.01.2020, 02:25

Используйте cmp , когда фактическая разница между файлами не требуется:

if cmp -s "$file1" $file2"; then
  printf '"%s" and "%s" are the same, moving...\n' "$file1" $file2"
  mv "$file1" $file2" host.bk/
else
  printf '"%s" and "%s" are different\n' "$file1" $file2"
fi
1
28.01.2020, 02:25

Теги

Похожие вопросы