当我想执行以下命令时,报错:
mv train2014/* coco_train2014/
-bash: /bin/mv: Argument list too long
这是因为这些命令的参数太长,即文件个数过多。其中 train2014 文件夹的内容全是 .jpg 格式的图片文件 解决的方法如下:
find train2014/ -name "*.jpg" | xargs -i mv {} coco_train2014/
同理使用 cp, ls 等命令也可以以同样的方式执行:
拷贝:
find train2014/ -name "*.jpg" | xargs -i cp {} coco_train2014/
删除:
find train2014/ -name "*.jpg" | xargs -i rm {}
参考:
http://noahsnail.com/2017/11/23/2017-11-23-Linux%E4%B8%AD%E2%80%9CArgument%20list%20too%20long%E2%80%9D%E8%A7%A3%E5%86%B3%E6%96%B9%E6%B3%95/
http://blog.51cto.com/tenderrain/1916885