linux – 在目录中获取所有扩展及其各自的文件计数

获取目录的所有扩展:简单.获取特定扩展的文件计数:很简单.

但是获取所有文件扩展名及其各自的文件数量正在暗示我.

例如.

+ dir
 + abc.txt
 + def.txt
 + abc.pdf
 * def.pov

应该返回类似的东西:

.txt 2
.pdf 1
.pov 1

这个练习的目的是我想找出哪个文件扩展名在某个目录中很流行.

提前致谢

解决方法

/var/cache$sudo find ./ -type f | grep -E ".*\.[a-zA-Z0-9]*$" | sed -e 's/.*\(\.[a-zA-Z0-9]*\)$/\1/' | sort | uniq -c | sort -n
      1 .6
      1 .cache
      1 .noconf
      1 .PHP
      1 .sl
      2 .bin
      2 .el
      2 .tdb
      4 .baseA
      4 .baseB
      4 .dat
      4 .DB
     27 .db
    221 .deb

这是解释:

find ./ -type f

找到只有文件,而不是目录

grep -E ".*\.[a-zA-Z0-9]*$"

带扩展名的过滤器文件

sed -e 's/.*\(\.[a-zA-Z0-9]*\)$/\1/'

删除路径和文件名,仅保存扩展名

sort | uniq -c | sort -n

sort,uniq和sort

相关文章

1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...
1 删除0字节文件 find -type f -size 0 -exec rm -rf {} ...
## 步骤 1:安装必要的软件包 首先,需要确保系统已安装 `dh...