Linux输出“Argument list too long”的解决方法

简介: Linux输出“Argument list too long”的解决方法
  • 原因


在Linux下使用cpmvrm等命令时,经常会碰到“Argument list too long”错误,这个主要就是因为要cp、mv、rm的文件个数太多而导致的


  • 解决方法


Argument list too long这个问题的解决主要会用到两个命令,findxargs


  1. 删除aaa目录下以.zip结尾的文件


#方法一:
find /aaa/ -name "*.zip" | xargs -i rm {}
#方法二:
find /aaa/ -name "*.zip" -exec rm {} \;
  1. 复制aaa目录下以.zip结尾的文件到bbb目录
#方法一:
find /aaa/ -name  "*.zip" | xargs -i cp {} bbb
#方法二:
find /aaa/ -name  "*.zip" -exec cp {} bbb \;
  1. 移动aaa目录下以.zip结尾的文件到bbb目录


#方法一:
find /aaa/ -name  "*.zip" | xargs -i mv {} bbb
#方法二:
find /aaa/ -name  "*.zip" -exec mv {} bbb \;


解释


find aaa/ -name "*.zip"是指在aaa文件夹下查找以.zip结尾的文件。


xargs命令是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具。而-i参数会将xargs的内容赋值给{}。


-exec参数后面是指执行其后面的命令,-exec以;为结尾,由于各个系统中分号的意义不同,因此可以使用\进行转义,最终{}会被find命令的结果替换。

目录
相关文章
|
Linux
删除大量文件和目录时报错:Argument list too long
这个目录下的文件数量我惊呆了。40W+ 的文件目录数量,直接报错了。
399 1
|
分布式计算 DataWorks 监控
DataWorks操作报错合集之遇到“OSERROR: argument list too long”的错误,该如何处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
351 1
|
Java API
将`List<String>`转换为`List<Long>`
将`List<String>`转换为`List<Long>`
1611 0
四种解决”Arg list too long”参数列表过长的办法
这些方法都可以帮助你避免因参数列表过长而导致的错误。选择方法取决于具体情况和需求。
1266 0
|
存储 算法 Linux
深入理解Linux内存管理brk 和 sbrk 与以及使用C++ list实现内存分配器
深入理解Linux内存管理brk 和 sbrk 与以及使用C++ list实现内存分配器
1252 0
Linux: 2>/dev/null 解决大量屏幕输出
Linux: 2>/dev/null 解决大量屏幕输出
Linux: 2>/dev/null 解决大量屏幕输出
YOLO V5出现RuntimeError: result type Float can‘t be cast to the desired output type long int解决方法
YOLO V5出现RuntimeError: result type Float can‘t be cast to the desired output type long int解决方法
1497 0
|
消息中间件 Linux 数据安全/隐私保护
探究Linux中消息队列和共享内存产生“Invalid Argument”错误的原因
在Linux操作系统中,消息队列和共享内存是进程间通信的常见方式。然而,有时候在使用这些机制时,可能会遇到“Invalid Argument”错误。本文将探讨导致此问题的可能原因,包括参数设置错误、权限问题、资源限制等,并提供相应解决方案。
1845 0
|
安全 Linux API
Linux内核10-list_head和hlist_head的理解
Linux内核10-list_head和hlist_head的理解
Linux Command printf 输出
Linux Command printf 输出