Как записать эти 5 минут с помощью awk, а затем преобразовать вывод в другой файл

Вы используете команду rsyncв подстановке команд. Подстановка команды будет заменена выводом команды внутри нее, и так, как написан ваш сценарий, этот вывод будет выполняться как команда, поэтому вы получаете это сообщение об ошибке и кажущийся странным вывод трассировки.

Вместо:

#!/bin/sh -x

rsync -auh --delete --out-format='%n' "$1" "$2" || exit 1

Если вы все еще хотите set -xв подоболочке внутри вашего скрипта:

#!/bin/sh

( set -x; rsync -auh --delete --out-format='%n' "$1" "$2" ) || exit 1

exit 1может быть отброшен, если rsyncявляется последней командой в скрипте, поскольку статус выхода скрипта будет статусом выхода последней выполненной команды, если только вы не хотите, чтобы он был ровно 1 как бы rsyncне получилось.

0
13.08.2021, 17:09
0 ответов

Теги

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