过滤 find 命令的输出

过滤 find 命令的输出

我想移动find命令输出的最后几个文件。我能想到的唯一方法是:

find ~/place -iname '*.mp4' -ok mv{} ~/someplace \;

但是文件太多了,不停地输入no那些我不想移动的文件太麻烦了。而且我感兴趣的文件都是大写字母。有没有更好的方法呢?

答案1

如果文件名除部分外全部都是大写字母.mp4,则可以使用find-regex选项:

find ~/place -regex '.*/[A-Z]*.mp4' -exec mv -t ~/someplace {} +

如果mp4也是大写,则进行相应修改。使用mv -t ~/someplace可让您使用-exec ... {} +形式,以便将多个文件一起移动。.*/匹配文件名前的路径。

相关内容