我使用ls | wc -1
命令来计算目录中的文件数。是否有命令来计算不同文件类型的数量?假设该目录有2个文本文件和一个jpeg,输出应为2(text和jpeg是不同的文件类型)。
非常感谢任何帮助。谢谢!
答案 0 :(得分:1)
没有一个命令(尽管你当然可以创建一个!)来做你想做的事,但是获得你的结果非常简单。确切地决定如何区分文件类型(文件扩展名,文件内容,名称等),然后使用常用工具来计算结果。如果您对file
命令打印的结果感到满意,可能就像这样简单:
file * | awk '{$1=""}1' | sort -u | wc -l
awk过滤掉输出的第一列(文件名),管道中的其余进程计算结果。这是脆弱的,如果你的任何文件名都包含空格,它会中断,所以你可能想在:
中使用awk
字段分隔符(在这种情况下,解决方案很脆弱,如果任何文件名包含,则会失败)冒号。)
答案 1 :(得分:-1)
使用file
查找文件类型。通过grep
管道以过滤掉图片等内容,然后执行wc -l
。