ОК, все достаточно просто. Я хочу рекурсивно искать в каталоге файлы с определенным расширением, а затем выполнять действия с этими файлами.
# pwd
ENTER
/dir
# ls -R | grep .txt | xargs -I {} open {}
ENTER
The file /dir/reallyinsubfolder.txt does not exist.
⬅ не работает (плохо)
Не выводится, но успешно .. /dir/fileinthisfolder.txt
⬅ открывается тихо (хорошо)
Этот действительно находит ВСЕ файлы, которые меня интересуют ... но только ОТКРЫТЫЕ те, которые оказываются "1-уровневыми". В этом случае попытка открыть /dir/reallyinsubfolder.txt
не удалась, так как reallyinsubfolder.txt
на самом деле /dir/sub/reallyinsubfolder.txt
.
Я понимаю, что grep просто возвращает совпавшее имя файла ... которое затем душит (в данном случае) команду open, так как не удается добраться до нужного подкаталога для выполнения файла ..
Как мне получить grep
, чтобы вернуть полный путь матча?