Linux查看文件夹大小(命令行查看文件夹大小的方法)
Linux查看文件夹大小
在Linux系统中,我们经常需要查看文件夹的大小,以便管理和优化磁盘空间。本文将介绍几种命令行查看文件夹大小的方法。
du命令
du命令是Linux系统中一个很方便的用来检查文件夹中所占空间大小的命令,可以用-duh命令查看文件夹及其中文件的空间占用情况,-d参数指定了需要统计的目录深度,-h参数则表示以人类可读的方式输出统计结果。
使用方法示例:
$ du -duh /home/user/Documents
此命令将输出类似如下结果:
4.0K
/home/user/Documents/sample.doc
2.0M
/home/user/Documents/photos/
2.2M
/home/user/Documents/presentations/
4.2M
/home/user/Documents/
这里的结果表明,该文件夹中总共占用了4.2M的空间,其中文档、照片和演示文稿等文件夹所占空间分别为2.0M、2.2M和4.0K。
ncdu命令
ncdu是另一个常用的命令行工具,用于检查整个文件系统或单个目录占用的空间情况。它会在命令行中以交互式菜单的方式显示每个目录和文件的大小,以及文件夹中最大的文件、最新的文件或最常用的文件等统计信息。
使用方法示例:
$ sudo apt-get install ncdu
$ ncdu /home/user/Documents
此命令会在屏幕上显示类似如下结果的菜单:
--- /home/user/Documents
2.2GiB [##########] presentations/
698.9MiB [### ] photos/
98.0MiB [ ] sample.doc
16.5MiB [ ] archive.tar.gz
12.5MiB [ ] backup.tar.gz
16.0KiB [ ] report.doc
832.0KiB [ ] summary.docx
! 1.1GiB [ ] file_system/
8.0KiB [ ] notes.txt
4.0KiB [ ] contacts.txt
4.0KiB [ ] reminders.txt
48.0KiB [ ] todo.txt
4.0KiB [ ] passwords.txt
324.0KiB [ ] work/
924.0KiB [ ] other/
12.0KiB [ ] index.html
28.0KiB [ ] projects/
163.0KiB [ ] presentations_backup/
Total disk usage: 4.2GiB Apparent size: 4.2GiB Items: 25175
我们可以使用方向键和回车键来选择想要进一步查看的文件夹或目录。
df命令
df命令是Linux系统用于检查磁盘空间的命令,它可以用来查看当前文件系统的磁盘使用情况。与其他命令不同,df命令只能用于查看磁盘分区和文件系统级别的磁盘占用情况,并不能专门用于查看某个文件夹的空间使用情况。
使用方法示例:
$ df -h
此命令将显示所有分区或挂载点的磁盘大小、已用空间、可用空间和使用百分比等信息,例如:
Filesystem Size Used Avail Use% Mounted on
udev 991M 0 991M 0% /dev
tmpfs 201M 18M 184M 10% /run
/dev/sda1 9.8G 8.1G 1.5G 85% /
tmpfs 1004M 0 1004M 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 1004M 0 1004M 0% /sys/fs/cgroup
/dev/sda6 199G 139G 50G 74% /home
可以看到,这个命令输出了磁盘分区的总大小、已用空间、可用空间和使用百分比。通过df命令,我们可以快速检查整个文件系统中所有分区或挂载点的磁盘使用情况。
统计文件夹大小的脚本
我们也可以使用脚本编写一个可以统计文件夹大小的简单脚本。这个脚本将递归地计算目录中所有文件和子文件夹的大小,并将统计结果以人类可读的形式输出。
以下是一个简单的Python脚本:
#!/usr/bin/env python3
import os
def get_size(start_path='.'):
total_size = 0
for dirpath, dirnames, filenames in os.walk(start_path):
for f in filenames:
fp = os.path.join(dirpath, f)
if not os.path.islink(fp):
total_size += os.path.getsize(fp)
return total_size
if __name__ == '__main__':
print(get_size('/home/user/Documents'))
运行结果:
2267973886
这个脚本递归地遍历了给定目录及其子目录中的所有文件,并计算了它们的大小。该脚本被执行后将返回文件夹的大小,以字节为单位的整数值。
结论
在Linux中,我们有多种方法来查看文件夹的大小。 du命令和ncdu命令都是常用的方法,它们可以帮助我们快速检查单个文件夹的大小和空间使用情况。 df命令则是一个用于查看磁盘分区和文件系统级别的磁盘占用情况的命令,通过它我们可以查看整个文件系统中所有分区或挂载点的磁盘使用情况。最后,我们还可以使用编写脚本的方法来实现文件夹大小的统计,方便快捷地进行空间管理。