如何查看Linux系统中文件夹或文件的大小
在日常运维和开发工作中,了解文件夹和文件占用的磁盘空间是非常重要的。尤其是当你在服务器上部署应用(如 Jenkins)时,合理监控磁盘使用情况可以避免磁盘空间不足导致的各种问题。在 Linux 系统中,我们可以使用一些简单的命令来查看文件夹或文件的大小。
1. 使用 du
命令查看文件夹大小
du
(Disk Usage)是一个非常常用的命令,用来查看文件和目录的磁盘空间使用情况。
-
查看整个目录的大小
要查看某个目录(如
/var/jenkins_home
)的总大小,可以使用以下命令:du -sh /path/to/directory
其中:
-s
表示只显示目录的总大小,而不是每个子目录的大小。-h
表示以人类可读的方式(KB、MB、GB)显示大小。
例如:
du -sh /var/jenkins_home
输出结果可能如下:
1.5G /var/jenkins_home
这表示
/var/jenkins_home
目录的总大小为 1.5GB。 -
查看目录下每个子目录的大小
如果你希望查看某个目录下每个子目录的大小,可以使用以下命令:
du -sh /path/to/directory/*
例如:
du -sh /var/jenkins_home/*
这样会列出
/var/jenkins_home
目录下每个子目录和文件的大小。输出示例:
500M /var/jenkins_home/jobs 300M /var/jenkins_home/plugins 700M /var/jenkins_home/workspace
这表示
/var/jenkins_home
目录下的jobs
文件夹占用了 500MB,plugins
文件夹占用了 300MB,而workspace
占用了 700MB。
2. 使用 df
命令查看磁盘使用情况
df
(Disk Free)命令用于查看文件系统的磁盘使用情况,显示所有挂载的磁盘分区的信息,包括总大小、已用大小和可用大小。
-
查看所有磁盘分区的使用情况
df -h
其中:
-h
表示以人类可读的方式(KB、MB、GB)显示结果。
输出示例:
Filesystem Size Used Avail Use% Mounted on /dev/sda1 50G 30G 18G 63% / /dev/sdb1 100G 50G 45G 52% /mnt/data
这个输出显示了两个磁盘分区的使用情况,其中:
/dev/sda1
总大小为 50GB,已用 30GB,剩余 18GB,已用 63%。/dev/sdb1
总大小为 100GB,已用 50GB,剩余 45GB,已用 52%。
3. 查看文件的大小
如果你只想查看单个文件的大小,可以使用 ls
命令带上 -l
参数来显示文件的详细信息,其中就包括文件的大小。
ls -lh /path/to/file
例如:
ls -lh /var/jenkins_home/jenkins.log
输出示例:
-rw-r--r-- 1 jenkins jenkins 100M Aug 30 15:22 /var/jenkins_home/jenkins.log
这表示文件 jenkins.log
的大小为 100MB。
4. 删除不需要的文件和清理空间
如果你发现某些文件或目录占用了过多的磁盘空间,可以考虑清理一些不必要的文件。在 Jenkins 中,一些日志文件和构建产物可能会占用大量空间。
你可以使用 rm
命令来删除不需要的文件:
rm -rf /path/to/unwanted/directory
或者使用 find
命令查找并删除旧的日志文件,例如删除 30 天前的日志文件:
find /var/jenkins_home/logs -type f -mtime +30 -exec rm -f {} \;
这将删除 /var/jenkins_home/logs
目录中 30 天前的所有日志文件。
总结
- 使用
du
命令查看目录和文件的磁盘空间使用情况。 - 使用
df
命令查看磁盘分区的使用情况。 - 使用
ls -lh
查看单个文件的大小。 - 定期清理不需要的文件,确保磁盘空间充足。