Я пытаюсь найти каждый Perl-скрипт в заданном каталоге и запустить скрипт, который я для них написал.Я придумал что-то вроде
find . -type f -exec file {} \; | grep perl | awk -F':' '{print $1}' | myscript
Я обеспокоен тем, что где-нибудь в имени файла есть ':', так что, хотя я бы использовал опцию file
'--print0
, чтобы дать мне что-токак
find . -type f -exec file --print0 {} \; | grep perl | awk -F'\0' '{print $1}' | myscript
Это не работает.Вместо этого я получаю кучу ошибок find: `file' terminated by signal 13
, которые, как я понимаю, указывают на сломанную трубу.Есть ли:
лучший способ получить путь ко всем моим сценариям Perl, или способ, позволяющий избежать прерывания канала пустым символом