前端之家收集整理的这篇文章主要介绍了
bash – 列出具有特定扩展名的目录中的所有文件,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
假设我想在包含子目录的目录中列出所有
PHP文件,我可以在bash中运行:
ls -l $(find.-name * .PHP -type f)
这样做的问题是,如果根本没有PHP文件,执行的命令是ls -l,列出所有文件和目录,而不是没有.
这是一个问题,因为我正在尝试使用所有PHP文件的组合大小
ls -l $(find.-name * .PHP -type f)| awk'{s = $5} END {print s}’
如果没有与* .PHP模式匹配的文件,则最终返回所有条目的大小.
我该如何防范此事件?
我建议你首先
搜索文件,然
后执行ls -l(或其他任何).例如这样:
find . -name "*PHP" -type f -exec ls -l {} \;
然后你可以管道awk表达式来进行添加.