Не анализируйте вывод find
, особенно если вы ожидаете странные и замечательные имена файлов.
Вместо этого либо выполняйте команды, которые необходимо выполнить через -exec
, либо встраивайте скрипт в саму команду find
:
find /upload -type f -exec sh -c '
for pathname do
printf "Would do something with \"%s\" here...\n" "$pathname"
done' sh {} +
Очевидно, что вы также можете поместить встроенный скрипт в отдельный файл:
#!/bin/sh
for pathname do
printf 'Would do something with "%s" here...\n' "$pathname"
done
А потом...
find /upload -type f -exec /path/to/script.sh {} +
Дополнительная литература по этому вопросу: