find -exec не запускает часть exec
Я выполняю следующие команды на этапе развертывания оболочки UrbanCode. Я хочу запустить Util.sh для всех найденных файлов.
find . -type f -exec ls -al {} \;
find . -type f -exec Util.sh -import source= {} overwrite=true \;
Util.sh
Вывод следующий, а 2-я команда вообще не запускалась.
delimiter specified is ,
executing script for all values in /app/bip/XMLP/Reports
-------------------------------
executing script for values: /app/bip/XMLP/Reports
/bin/sh /var/tmp/shell_command_5832071109593396198.tmp /app/bip/XMLP/Reports
-------------------------------
command output:
./BIP_Rollfoward/tmp/FlexPak/Asset_Allocation/Asset_Allocation.xdmz
./BIP_Rollfoward/tmp/FlexPak/Asset_Allocation/Asset_Allocation.xdoz
/var/tmp/shell_command_5832071109593396198.tmp: Util.sh: not found
===============================
command exit code: 1
1 ответ
Мне пришлось изменить владельца каталога со слишком длинным списком файлов, поэтому я использовал следующую команду поиска. Я бы использовал "\;" закрыть exec, но это не сработало.
find /path/to/dir -name \* -exec chown user:group {} +
Этот код работал на версии 6.1.3
Вам нужно удалить пробел между '=' и '{' в source= {}
Должно быть:
source={}