位置: IT常识 - 正文

linux批量操作时提示Argument list too long解决方法(linux批量操作工具)

编辑:rootadmin
在实际使用过程中,若一个目录下文件或文件夹太多,在执行“*” 命令时 会提示Argument list too long,如rm -rf /tmp/*命令下... 17-04-02

推荐整理分享linux批量操作时提示Argument list too long解决方法(linux批量操作工具),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux批量处理文件,linux批量管理平台,linux批量提交任务,linux批量操作时调用CPU核变少,linux 批量操作,linux 批量操作,linux 批量执行命令,linux 批量执行命令,内容如对您有帮助,希望把文章链接给更多的朋友!

第一种情况:

在实际使用过程中,若一个目录下文件或文件夹太多,在执行“*” 命令时 会提示Argument list too long,如rm -rf /tmp/*命令下。解决方案:

ls | xargs ­n 10 rm ­rf ls

SSH执行以上命令,输出所有的文件名(用空格分割) xargs就是将ls的输出,每10个为一组(以空格为分隔符),作为rm ­rf的参数 也就是说将所有文件名10个为一组,由rm ­rf删除。

第二种情况:

rm、cp、mv是unix下面常用到的档案处理指令,当我们需要删除大量的log档案,如果档案数太多就会出现此讯息【/bin/rm: Argument list too long】

解决方式如下:例如要删除 /tmp/*.log则执行【ls /tmp/*.log | xargs rm -f】这样就可以萝^__^,其他cp,mv同理!

第三种情况:

今日需要删除/tmp目录下的所有文件,文件数量比较多。

ls -lt /tmp | wc -l 385412

使用 rm * 后,系统提示错误 Argument list too long原因是在linux下,试图传太多参数给一个系统命令(ls *; cp *; rm *; cat *; etc..)时,就会出现 Argument list too long错误。

解决方法如下:使用find -exec 遍历,然后执行删除便可。

sudo find /tmp -type f -exec rm {} \;

在linux中删除大量文件时,直接用rm会出现:-bash: /bin/rm: 参数列表过长,的错误。

这时可以用find命令来结合使用。

linux批量操作时提示Argument list too long解决方法(linux批量操作工具)

例:1、rm * -rf 改为:find . -name "*" | xargs rm -rf '*' 就行了。

2、rm test* -rf 改为:find . -name "test*" | xargs rm -rf "test*"

mv时报参数列表过长,for i in *.m;do mv $i ${i%.m};done于是求助于google,探索过程就省略了,直接说解决方法吧:ls dir1 | xargs -t -I {} mv {} dir2/{}这里的一对大括号是原文给的例子里用的,后来看了参数的用法,其实那对大括号是可以用任意字符串替换的,比如:ls dir1 | xargs -t -I asdf mv asdf dir2/asdf效果和大括号那一版是完全一样的,就是看起来有点儿不严肃。需要说明的是,上面xargs的第二个参数,是大写的i,读作”爱“的那个字母,不是小写的L。至于参数的含义嘛,我忘了。

Linux下 报错“命令参数列表过长”,在用mv命令一次移动3万多个文件时失败了,原始命令类似这样:”mv $(ls dir1) dir2“。错误提示的中心思想是:”你这参数也太TM多了吧“。按照LZ想法大概可以这么做:find /dir1/ -maxdepth 1 | xargs -i mv {} /dir2/如果参数过长,使用tar比较简单tar -C /dir1/ -cf-. | tar -xf--C /dir2/

  于是求助于google,探索过程就省略了,直接说解决方法吧:  ls dir1 | xargs -t -I {} mv {} dir2/{}  这里的一对大括号是原文给的例子里用的,后来看了参数的用法,其实那对大括号是可以用任意字符串替换的,比如:  ls dir1 | xargs -t -I asdf mv asdf dir2/asdf  效果和大括号那一版是完全一样的,就是看起来有点儿不严肃。  需要说明的是,上面xargs的第二个参数,是大写的i,读作”爱“的那个字母,不是小写的L。至于参数的含义嘛,我忘了。

另外4种方法作为一个linux用户/系统管理员, 有些时候你会遇到以下错误提示:

[user@localhost foo]$ mv * ../foo2bash: /bin/mv: Argument list too long

“Argument list too long”参数列表过长错误经常发生在用户在一行简单命令中提供了过多的参数而导致,经常在ls *, cp *, rm * 等中出现。根据问题的原因以下提供了四种方法,可以根据自己的情况酌情选用方法1 : 将文件群手动划分为比较小的组合e.g 1:

[user@localhost foo]$ mv [a-l]* ../foo2[user@localhost foo]$ mv [m-z]* ../foo2

这是最基本的方法,只是简单的使参数数量符合要求,这种方法应用范围有限,只适用于文件列表中的名字分布比较均匀,另外这也是个初级用户可以考虑的解决方案,不过需要很多重复命令和对文件名分布的观察与猜测。

方法2 : 使用find命令e.g 2:

[user@localhost foo]$ find $foo -type f -name '*' -exec mv {}$foo2/. \;方法2通过find命令,将文件清单输出到mv命令,使其一次处理一个,这样就完全避免了过量参数的存在,另外通过不同的参数,可以指定除了名称以外的时间戳,权限,以及inode等匹配模式。方法2的缺点在于比较耗费时间。

方法3 : 创建shell函数e.g 3.1:

function huge_mv (){whileread line1; domv foo/$line1 ../foo2done}ls -1 foo/ | huge_mv写一个shell函数并不涉及到某种程度的复杂性, 这种方法比方法1和方法2相比更加灵活。

下面我们来扩展一下例3.1 :e.g 3.2:

function huge_mv (){whileread line1; domd5sum foo/$line1 >> ~/md5sumsls -l foo/$line1 >> ~/backup_listmv foo/$line1 ../foo2done}ls -1 foo/ | huge_mv

相比例3.1,例3.2生成了文件的md校验散列文件和名字备份,符合给自己留条后路的哲学。另外可以根据自己的需要无限制的扩展功能。

方法4 : 终极解决方案,重新编译内核首先使用这个方案之前要谨慎,因为涉及到修改内核源代码,在生产环境中还是要斟酌一下并做好测试。另外,这个方法是从根本上解决的,一劳永逸的 这也是开放源码的好处之一 首先在内核源码中找到 include/linux/binfmts.h文件 ,搜索到以下字段:/** MAX_ARG_PAGES defines the number of pages allocated for arguments* and envelope for the new program. 32 should suffice, this gives* a maximum env+arg of 128kB w/4KB pages!*/#define MAX_ARG_PAGES 32修改 MAX_ARG_PAGES数值为 64 或者更高即可完善的解决参数受限问题。然后 重新编译并启用新内核即可。

本文链接地址:https://www.jiuchutong.com/zhishi/269201.html 转载请保留说明!

上一篇:苹果14promax电池多少毫安(苹果14promax电池掉电很快)

下一篇:打不开文件夹选项(文件夹不能打开没有反应)

  • 电商网站推广应注重的网站形象(电商网站推广应注意事项)

    电商网站推广应注重的网站形象(电商网站推广应注意事项)

  • 苹果xr能插几张卡(苹果xr能插几张电话卡)

    苹果xr能插几张卡(苹果xr能插几张电话卡)

  • 华为nova7 pro防水级别是多少(华为nova7pro防水吗)

    华为nova7 pro防水级别是多少(华为nova7pro防水吗)

  • 微信被限制收款是为什么(微信被限制收款功能怎么解除)

    微信被限制收款是为什么(微信被限制收款功能怎么解除)

  • 小米手机恢复出厂设置照片还在吗(小米手机恢复出厂设置后小米账号还会有吗)

    小米手机恢复出厂设置照片还在吗(小米手机恢复出厂设置后小米账号还会有吗)

  • 三星9611相当于骁龙多少(三星9611cpu)

    三星9611相当于骁龙多少(三星9611cpu)

  • ipad摔变形了还能修吗(平板摔变形了)

    ipad摔变形了还能修吗(平板摔变形了)

  • 为什么候补订单总是在待兑现状态(为什么候补订单价格贵)

    为什么候补订单总是在待兑现状态(为什么候补订单价格贵)

  • 苹果耳机改名定位什么意思(苹果无线耳机改名定位有什么用)

    苹果耳机改名定位什么意思(苹果无线耳机改名定位有什么用)

  • opporenoz支持5g网络吗(opporenoz几g)

    opporenoz支持5g网络吗(opporenoz几g)

  • 拼多多收藏商品有什么好处(拼多多收藏商品分类)

    拼多多收藏商品有什么好处(拼多多收藏商品分类)

  • 微信开通横屏模式是什么(微信开启横屏模式有什么用)

    微信开通横屏模式是什么(微信开启横屏模式有什么用)

  • 手机锁屏热点咨询怎么关闭(手机锁屏热点就没了)

    手机锁屏热点咨询怎么关闭(手机锁屏热点就没了)

  • 网易云怎么更换手机号(网易云怎么更换唱片的样式)

    网易云怎么更换手机号(网易云怎么更换唱片的样式)

  • vivox27微信美颜怎么打开(vivox27微信美颜怎么设置)

    vivox27微信美颜怎么打开(vivox27微信美颜怎么设置)

  • 抖音设为私密了是不是谁都看不见(抖音设为私密了怎么才能看到作品)

    抖音设为私密了是不是谁都看不见(抖音设为私密了怎么才能看到作品)

  • vivo怎么取消屏幕遮挡(vivo怎么取消屏幕固定)

    vivo怎么取消屏幕遮挡(vivo怎么取消屏幕固定)

  • 怎么关掉安全卫士(怎样关掉安全卫士)

    怎么关掉安全卫士(怎样关掉安全卫士)

  • excel最多多少行列(xlsx最多多少行)

    excel最多多少行列(xlsx最多多少行)

  • 千兆网口和百兆网口的区别(千兆网口和百兆网口怎么区分)

    千兆网口和百兆网口的区别(千兆网口和百兆网口怎么区分)

  • 苹果xr怎么显示网速(苹果XR怎么显示电量数字)

    苹果xr怎么显示网速(苹果XR怎么显示电量数字)

  • Windows server 2008设置远程桌面连接的详细步骤(图文教程)

    Windows server 2008设置远程桌面连接的详细步骤(图文教程)

  • 冰岛北部内陆景观中的Aldeyjarfoss瀑布 (© Jim Patterson/Tandem Stills + Motion)(冰岛北部内陆景观有哪些)

    冰岛北部内陆景观中的Aldeyjarfoss瀑布 (© Jim Patterson/Tandem Stills + Motion)(冰岛北部内陆景观有哪些)

  • 应交税费借方余额0.01怎么调整
  • 商贸流通企业出口退税的会计处理怎么做
  • 银企对账如何操作
  • 商贸企业产值含税吗
  • 一般纳税人月底增值税如何结转
  • 季末资产总额的计算
  • 个人独资企业有章程没有
  • 行政单位的财务报告包括财务报表和财务情况说明书
  • 固定资产遭受自然灾害账务处理
  • 政府补贴是什么职能
  • 企业所得税申报表在哪里打印
  • 购销合同印花税优惠政策
  • 长期负债率分析
  • 公户转到老板私人账户
  • 备用金被盗怎么找回来
  • 小规模纳税人减免税收政策
  • 销售利润率如何提高
  • 国家知识产权局商标注册
  • 清卡增值税申报比对不通过的原因
  • 免税和不征税货一样吗
  • 外墙装饰公司的资质规定
  • 个人可以到税务局来取消办税人员信息吗?
  • 变相处理问题什么意思
  • 老版普通增值税发票还能用吗
  • 小规模未开票收入要交增值税吗
  • 土地所有权和使用权的法律规定
  • 企业开票信息可以改吗
  • 付给银行的手续费分录
  • macbook无法调节音量
  • 收据和发票的区别图片
  • 2020 php 薪资
  • 收到汇算清缴退税账务处理
  • 原始凭证填的基数怎么填
  • linux下4种kill某个用户所有进程的方法
  • 一亩地是多少平方?
  • 股权激励的账务如何处理
  • 元宇宙产业链
  • pyecharts 表格
  • ChatGPT会取代你的岗位吗?
  • 对外长期投资会计分录?
  • 超过离线开票限定时间怎么办
  • dedecms进入数据库
  • 个人所得税计算方法及抵扣方法
  • db2报42603
  • 工资发放用现金
  • 小规模纳税人专票开1%还是3%
  • 商业汇票的承兑银行必须具备下列条件
  • 企业所得税征前还是征后
  • 简易征收的项目进项税可以抵扣吗
  • 教育局给幼儿园的补贴
  • 公户转私户的钱怎么退回来
  • 应收账款资产减值准备可以在所得税前扣除吗
  • 管理费用包括哪些税
  • 公司账户多少钱保证公司运转
  • 费用票成本票有哪些
  • 银行业应收票据分析
  • mysql提高效率
  • 隐藏在大山深处的罪恶
  • win2000系统
  • linux中chkconfig命令的作用
  • 如何解决cpu超频问题
  • linux计划任务怎么写
  • 用centos搭建服务器的详细教程
  • linux下nanosleep() & sleep()的区别
  • win7系统卡慢怎么修复
  • win10非正常关机系统修复
  • Win10 Mobile RS1预览版14267.1004升级过程截图
  • 3dmax创建图形怎么用
  • 批处理教程(最全版).pdf免费
  • cocos2dx schedule
  • 简述android中色值原理与表示形式
  • 用js获取地址栏url参数的方法
  • 手机android版本强制升级
  • 劳办发1994第48号文全文原文
  • 地税怎么查个人所得税
  • 四川税务专管员查询
  • 税收与税收管理的关系
  • 2020年山东录取人数
  • 高山白茶和普通白茶的区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设