昨天查看内网服务器磁盘空间发现 98%
df -h
磁盘马上就要被占满了!!
批量删除大于1G的日志文件及目录
cd /data/logs
du -ah * | grep '[0-9\.]G' | sort -nk 1 | xargs rm -rf
上面的命令 是同事写的, linux 命令基础真心比不过呀. 删除后
[root@localhost ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 99G 66G 29G 70% /
tmpfs 16G 234M 16G 2% /dev/shm
/dev/sda1 477M 52M 400M 12% /boot
/dev/mapper/VolGroup-LogVol00
892G 278G 614G 32% /data
- ok 简单解释下上面的命令
du -ah *
查看当前目录下所有文件及目录的全部大小并以适当单位展示grep '[0-9.]G'
过滤所有已G 为单位 大小的文件sort -nk 1
使用第一列作为数字排序的依据, 依次列出文件名xargs rm -rf
将前面管道传递过来的文件名 依次删除 (这个命令很危险要注意的是当前目录所在的位置)
每条命令我都能理解, 也都用过, 但是组合使用经验十分匮乏. 以后在遇到shell 组合命令的使用我都要记录下使用场景.
还有要说的就是, 不要把你看不懂的shell 直接放在服务器上使用!!!
服务器上我们可以从 history
中学习到很懂知识. 了解他人使用命令的习惯