命令行批量移动文件

在子目录中移动
ls -l ./ | grep 'cat' | grep -v "grep" | awk '{print $9}' | xargs -I {} mv {} ../cat

在父目录中移动(注意相对路径)
ls -l ./train | grep 'dog' | grep -v "grep" | awk '{print $9}' | xargs -I {} mv ./train/{} ./dog

这里我理解的,xargs中第一个“{}” 为某个具体的文件名(暂存),后面部分为拼接的命令,即第二个“{}”是取的第一个“{}”中的值。

猜你喜欢

转载自www.cnblogs.com/ikodota/p/move_files.html
今日推荐