大致来说,我在 Linux 服务器上设置了一个如下文件夹:
/节目/season01/show01/shows01e01.mkv /节目/season02/show01/shows02e01.mkv /节目/season03/show01/shows03e01.mkv
我想消除文件夹...我想将*.mkv
文件复制到/show/
目录中...
有人可以帮我解决这个问题吗?
答案1
Alex 的回答很好。以下是几种替代方法:
查找 + xargs:
find /show -name "*.mkv" -print0 | xargs -0 -Imkv cp mkv /show/
查找 + 并行:
find /show -name "*.mkv" -print0 | parallel -0 -j+0 cp {} /show/
使用的唯一有趣的事情平行线而不是find/exec
它可以并行执行多个命令。这些-j+0
参数将使其一次启动与 CPU 核心数量一样多的作业。如果此操作完全受磁盘限制,这可能不是特别有用,但它可能会加快复制大量文件的速度。
答案2
find /show -name "*.mkv" -exec cp {} /show/ \;
会起作用