位置: 编程技术 - 正文

linux批量操作时提示Argument list too long解决方法(linux批量管理平台)

发布时间:2024-02-26

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

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

第一种情况:

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

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

第二种情况:

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

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

第三种情况:

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

linux批量操作时提示Argument list too long解决方法(linux批量管理平台)

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

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

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

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

例: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:

相比例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. should suffice, this gives* a maximum env+arg of kB w/4KB pages!*/#define MAX_ARG_PAGES 修改 MAX_ARG_PAGES数值为 或者更高即可完善的解决参数受限问题。然后 重新编译并启用新内核即可。

Linux使用文本浏览器lynx并显示中文的方法 使用Fedora,当然需要玩一些酷的东东,lynx是在文本环境下不错的网页浏览工具,在网速不好的时候使用lynx可以减少网页下载图片所耗用的时间(因为lyn

Linux下如何使用enca查看文件编码并转换? 在Linux做开发或者系统管理遇到乱码是经常的事情,主要Windows下中文的默认编码是bg,而Linux下是utf-8。很多时候涉及到和Windows平台系统的通信免不了

Linux与grub下如何查看各分区设备名称? 很多时候我们要用到诸如(hd0,1)、(hd0,2)、sda1、sda2等等这些名称,可是这些到底是什么东西呢,在哪里才能看到呢?下面我就说出我个人的认识:

标签: linux批量管理平台

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

上一篇:Fedora Linux下安装套件的方法(fedora系统安装软件)

下一篇:Linux使用文本浏览器lynx并显示中文的方法(linux纯文本浏览器)

  • 所得税费用的计提
  • 火车票丢了怎么补打报销凭证
  • 个体如何申请电子公章流程
  • 销货退回的税务处理
  • 预算资产负债表
  • etc预付发票可以抵税吗
  • 公章未备案是否不合法
  • 专用增值税发票和普通发票区别
  • 会计账簿账目核对要求包括哪些
  • 单位为个人负担工资、薪金所得的个税,怎么征收个税
  • 出口退税申报无电子信息
  • 中小型企业库存的问题及对策
  • 资本公积账务处理案例
  • 个人经营贷款利率是多少
  • 预付款期末有结余年末如何做账务处理?
  • 企业领用本企业生产的产品会计分录
  • 现金流量表借款还了流入和流出可以抵消吗
  • 出口贸易没有进口贸易
  • 汽车折旧年限与什么有关
  • 南方建筑主编
  • 金融资产包括哪三大类及会计科目
  • 一般个体户核定税率多少
  • 公司开设食堂需要哪些手续
  • 小规模公司税控盘维护费会计分录
  • 政府装修补贴政策
  • 工会收到单位拨款怎么办
  • macos catalina与macos big区别
  • 不要运行指定的Windows应用程序怎么设置win10教程
  • 工程施工质量罚款措施
  • linux常见的文本编辑工具有哪些
  • 购进农产品发生非正常损失
  • PHP:pcntl_fork()的用法_PCNTL函数
  • PHP:iconv_set_encoding()的用法_iconv函数
  • 短期借款利息计算
  • PHP:imagefilledarc()的用法_GD库图像处理函数
  • 以物易物怎么写分录
  • php两个$什么意思
  • 税控系统维护费抵扣申报表怎么填
  • 查看redis节点
  • vscode写前端代码,如何运行
  • 支付职工教育经费
  • dos命令怎么转到d盘
  • 税金及附加包括哪些
  • 企业以银行存款购买股票
  • 结转费用类会计分录怎么写
  • phpcms官网打不开
  • 取得发票没有加税怎么办
  • 小规模公司注销时账务要如何处理
  • 单位安装摄像头合法吗
  • 小微企业免税销售额是多少2023年
  • 一般纳税人是指哪些人群
  • 勾选认证能够勾选当月
  • 视同销售是按成本价入账还是按计税价格入账,为什么?
  • 发票未到货已入库会计分录 原材料
  • 固定资产能直接计入费用吗为什么
  • 异地工程开票要注意什么手续
  • 独立核算和非独立核算增值税
  • 当月发票未到怎么做账
  • 收据可不可以做账
  • win8.1的开始菜单在哪
  • win2003系统安装
  • centos怎么查看文件
  • xp系统安装条件
  • windows下打开ie提示由于该计算机受到限制,本次操作已被取消
  • linux 更新yum
  • windows的fn键
  • win10 windows update在哪里打开
  • ssh 使用代理
  • win10添加功能在哪
  • jquery生成网页内容
  • opengl三维场景
  • jquery插件ajaxupload实现文件上传操作
  • mac解析域名
  • jquery easyui开发指南
  • 集资房税收问题
  • 经营租赁属于什么费用
  • 怎么注册山东省采购网
  • 税务稽查的后果
  • 年度汇算清缴计算
  • 应缴纳资源税税额怎么计算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号