У меня есть следующая структура файла / каталога:
tsunami # find .
.
./dir1
./dir1/dirinner
./dir1/dirinner/innerfile
./logs
./messages
Я пытаюсь рекурсивно найти файлы и обработать их, используя find/exec.
Версия find (поставляется с busybox) не позволяет использовать обнаруженное имя файла более одного раза в команде exec, как описано здесь. Итак, я использовал одно из предложенных решений. Итак, я переписал это:
find * -type f -exec echo {} +
к этому:
find * -type f -exec sh -c 'echo $0' {} +
Но новая версия находит только самый внутренний файл, и ничего больше.
Вот вывод для обоих:
tsunami # find * -type f -exec echo {} +
dir1/dirinner/innerfile logs messages
tsunami # find * -type f -exec sh -c 'echo $0' {} +
dir1/dirinner/innerfile
Как это исправить? Мне нужно, чтобы найти все файлы, а не только самый внутренний.