灭霸指令-随机删除系统中一半的文件

此命令会随机删除系统中一半的文件,请谨慎使用

#完整版:随机删除根目录所有文件的一半(整个系统的文件,慎用!!!)
let i=`find / -type f | wc -l`/2 ; find / -type f -print0 | shuf -z -n $i | xargs -0 -- rm

#阉割版:随机删除当前目录下一半的文件

let i=`find . -type f | wc -l`/2 ; find . -type f -print0 | shuf -z -n $i | xargs -0 -- rm

命令解析:

let i=`find / -type f | wc -l`/2 ;
#设置一个变量 i 的值是根目录下所有文件的个数的二分之一

find / -type f -print0

#找寻根目录下所有文件输出
shuf -z -n $i

#使用 shuf 把输入行按随机顺序输出到标准输出总文件数的一半
xargs -0 -- rm

#通过 xargs 传入之前的结果,结合 rm 命令进行删除操作 

过程解析:
使用 ind / -type f | wc -l 获取了根目录下所有文件的数量,再除以2将结果赋予给变量 i,使用 find 命令找到根目录下所有文件,shuf 输出根目录下所有文件的一半,通过 xargs 传参,再使用rm命令进行删除操作

参考文章:
shuf命令详解
find -print0和xargs -0原理及用法

猜你喜欢

转载自blog.csdn.net/qq_36641456/article/details/89209208