Linux 查看大文件和快速清空大文件

df 查看磁盘空间使用情况

Filesystem      Size   Used  Avail Capacity iused               ifree %iused  Mounted on
/dev/disk1s1   113Gi   90Gi   19Gi    83% 2074500 9223372036852701307    0%   /
devfs          201Ki  201Ki    0Bi   100%     696                   0  100%   /dev
/dev/disk1s4   113Gi  3.0Gi   19Gi    14%       3 9223372036854775804    0%   /private/var/vm
map -hosts       0Bi    0Bi    0Bi   100%       0                   0  100%   /net
map auto_home    0Bi    0Bi    0Bi   100%       0                   0  100%   /home

du:用于统计linux中文件或目录所占磁盘空间的大小

du -m --max-depth=1

du -h --max-depth=1

du 参数详解

-m:以M为单位展示查询结果

-h:以K、M、G为单位展示查询结果,提高信息可读性

–max-depth=1:其中,数字“1”是指查询结果中最多显示的目录层数,1指最多显示一层目录

查看删除大文件没有释放的进程

lsof | grep deleted

df -h显示磁盘占满,但是du查不到大文件,可能是文件删除可是空间没有释放

rm删除无法释放空间,下面方式可以成功释放空间

cat /dev/null > filename

清空文件方式

$ echo "" > test.txt(文件大小被截为1字节)
$  > test.txt(文件大小被截为0字节)
$ cat/dev/null > test.txt(文件大小被截为0字节)
$ echo > test.txt (ctrl+d结束)
$ cat > test.txt (ctrl+d结束)
$ clear > test.txt (清空内容)
$ true > test.txt (清空内容)
$ false > test.txt (清空内容)
$ : > test.txt (清空内容)

查看大文件

find /home -size +100M -exec ls -lh {} \;

删除大于100M的文件

find /home -size +100M -exec rm {} \;

排序文件

du -s * | sort -nr | head