如何计算给定目录内的文件和子目录的数量
最简单的方法是使用命令来计算目录中的文件和子目录的数量tree
,该命令最出名的是以树状形式显示文件和目录。
尽管您始终可以启用配额来限制磁盘空间和 inode 使用量以避免用户滥用,但此命令无论如何都很有用。默认情况下,如果没有给出参数,则假定当前工作目录:
$ tree -iLf 1
示例输出
. ./10-Top-Linux-Distributions-of-201mbhcybkrcxfngliawfrvntmnmfgbjntd.png ./adobe-flash-player-alternative.jpg ./CentOS-7-Security-Hardening-Guide.png ./coding.png ./d-logo-sketch.png ./Experts-Share-Thoughts-on-25th-Anniversary-of-the-World-Wide-Web-431806-xqbkeiijrafjcfopiwwovljnkvpimneq.jpg ./Get-Default-OS-logo/logo.png ./InstallCinnamonDesktoponUbuntuandFedora720x34mbhcybkrcxfngliawfrvntmnmfgbjntd.png ./Install-Nagios-in-CentOS.jpg ./Install-Vmware-Workstation-12-in-bbaqchhgcqgaqmpgldsolvupsyvtducu.png ./Install-WordPress-on-CentOS-Fedora.png ./xtvpwgxdegnfwavqcfqgdwplsnchtsum.png ./Linux-Online-Training-Courses.png ./Linux-PDF-Readers-Viewers-Tools.png ./linux-play-game.jpg ./logo/logo.png ./nrpe-3.0.tar.gz ./wvjfonbwrnnrxsjngbgkkffwjjvjqsoq.png ./Ravi ./teamviewer 11 0 57095 i386 ./Telegram ./tsetup.0.10.1.tar.xz ./VBoxGuestAdditions_5.0.0.iso ./olfgvqrjagwuwdrwnlapeudkxcqlraul.png ./VMware-Workstation-Full-12.1.1-3770994.x86_64.bundle 3 directories, 22 files
如果您想要查看相同的信息/var/log
,请执行以下操作:
$ tree -iLf 1 /var/log
示例输出
/var/log /var/log/alternatives.log /var/log/apt /var/log/aptitude /var/log/auth.log /var/log/boot.log /var/log/bootstrap.log /var/log/btmp /var/log/btmp.1 /var/log/ConsoleKit /var/log/cups /var/log/dmesg /var/log/dpkg.log /var/log/faillog /var/log/fontconfig.log /var/log/fsck /var/log/gpu-manager.log /var/log/hp /var/log/installer /var/log/kern.log /var/log/lastlog /var/log/mdm /var/log/mintsystem.log /var/log/mintsystem.timestamps /var/log/ntpstats /var/log/samba /var/log/speech-dispatcher /var/log/syslog /var/log/syslog.1 /var/log/teamviewer11 /var/log/unattended-upgrades /var/log/upstart /var/log/vbox-install.log /var/log/wtmp /var/log/wtmp.1 /var/log/Xorg.0.log /var/log/Xorg.0.log.old 13 directories, 23 files
输入以下命令来查看目录中的文件和子目录的信息ISOs
。
$ tree -iLf 1 ISOs
示例输出
ISOs ISOs/CentOS-6.5-x86_64-minimal.iso ISOs/CentOS-7.0-1406-x86_64-Minimal.iso ISOs/CentOS-7-x86_64-DVD-1503-01 ISOs/ces-standard-3.3-x86_64.iso ISOs/debian-8.1.0-amd64-CD-1.iso ISOs/kali-linux-2.0-i386 ISOs/openSUSE-13.2-DVD-x86_64.iso ISOs/rhel-server-7.0-x86_64-dvd.iso ISOs/ubuntu-14.04.2-desktop-amd64.iso ISOs/ubuntu-14.04.3-server-amd64.iso ISOs/VL-7.1-STD-FINAL.iso ISOs/Win10_1511_1_English_x32.iso ISOs/Win10_1511_1_Spanish_64.iso 2 directories, 11 files
解释tree
上述命令中使用的选项:
-i
– 它是一个图形选项,使树能够打印出缩进线-L
– 指定要显示的目录树的深度级别,在上面的例子中为1-f
– 使树打印每个文件的完整路径前缀
从上图可以看出,列出所有文件和子目录后,tree
会显示指定目录中的目录和文件的总数。
建议阅读: 使用 Tar 和 OpenSSL 加密和解密文件和目录
您可以参考树手册页来发现更多有用的选项、一些配置文件和环境变量,以便更好地了解它是如何工作的。
结论
在这里,我们介绍了一个重要的技巧,它可以帮助您tree
以不同于传统用途的方式使用该实用程序,以树状形式显示文件和目录。
您可以使用手册页中的众多树选项来创建新的提示。您有任何关于使用树的有用提示吗?然后通过下面的反馈表与全球数百万 Linux 用户分享。