获取目录中不同文件结尾的列表(UNIX shell)

let*_*tar 1 linux shell filenames

我有一个目录,其中包含许多不同格式的图像文件。我想查看该目录中所有不同文件结尾的列表,以便我可以看到存在哪种图像格式。所以假设只有png,gifjpg文件,我想要的输出看起来像:

png
gif
jpg
Run Code Online (Sandbox Code Playgroud)

我知道如何使用lsand获取所有文件结尾的列表 cut,但我不知道如何使其仅包含唯一条目。有没有办法只使用 shell 工具来做到这一点,或者我是否必须编写一个小的 python 脚本或类似的脚本?

小智 7

$ ls *.* | nawk -F\. '{print $(NF);}' | sort | uniq
Run Code Online (Sandbox Code Playgroud)

如果您想知道每种类型的数量:

$ ls *.* | nawk -F\. '{print $(NF);}' | sort | uniq -c
Run Code Online (Sandbox Code Playgroud)