我正在尝试在给定目录下找到每个Perl脚本,并运行我在其上编写的脚本。我想出了像
这样的东西find . -type f -exec file {} \; | grep perl | awk -F':' '{print $1}' | myscript
我担心某个文件名中有一个':',所以尽管我使用file
的{{1}}选项给我一些类似
find . -type f -exec file --print0 {} \; | grep perl | awk -F'\0' '{print $1}' | myscript
它不起作用。我得到了一堆--print0
错误,据我所知,这表明管道已损坏。有没有:
的方法
答案 0 :(得分:0)
毕竟这很简单:
find . -type f -exec file --print0 "{}" + | \
perl -aF'\0' -lne 'print$F[0] if/perl/i'