Linxu執行 rm -rf Argument list too long

因爲docker容器中跑的Jenkins 有1個任務是名称叫Jenkins Update总是失败,而且定时是* * * * *每分钟执行的,导致文件夹jobs文件夹过多

参考文章的第1篇中,了解到,可以使用awk工具进行处理

进入需要删除的文件夹中,然后删除里面的文件

1
2
cd /home/vagrant/test
ls -l| awk '{ print "rm -f ",$9}'|sh

因为Jenkins的builds下是数字名称的文件夹,所以命令需要修改一下

1
2
cd ~/docker/jenkins/jobs/Jenkins Update/builds
ls -l| awk '$9<=120254{ print "sudo rm -rf ",$9}'|sh

$9ls -l 第9列,因为我的文件夹是 以数字命名的名称,所以加了数字的判断

Reference
  1. Linux下通过 rm -f 删除大量文件时报错:Argument list too long
  2. awk从放弃到入门(1):awk基础 (通俗易懂,快进来看
  3. 一. AWK入门指南
  4. awk实战:文件里面全是数字,实现大于100的求和并打印出所在行和这些数字的总和