Shell
xargs 加 shell 字元串操作與 sed
我正在嘗試以遞歸方式總結目錄中的文件副檔名。
find .| xargs -d "\n" -I@ echo "${@##.*}" | sort |uniq -c
但這給了我一系列空白行。不是我想要的。
我知道:
find . -type f | sed 's/.*\.//' | sort | uniq -c
從一個類似的問題,但我很好奇為什麼我的公式不起作用。
您可以為找到的每個文件
find
執行file
。find . -exec file -b {} \; |cut -f1|sort|uniq -c
編輯
正如@Ed-Nevile 下面的評論刪除
cut
提供了 ASCII 文件的更多細節。find . -exec file -b {} \; |sort|uniq -c