查找不同类型的文件并移动到特定目录

问题描述 投票:0回答:2

查找 *.mkv 和 *.mp4 有效

find /home6/movies/ -name '*.mp4' -o -name '*.mkv'

但由于某种原因移动它们部分失败并且仅移动 mkv 文件

find /home6/movies/ -name '*.mp4' -o -name '*.mkv' -exec mv {} /home6/archive/ \;

我是否使用了错误的查找开关“-o”来执行此任务?

linux bash find move
2个回答
3
投票

看起来您需要将 or 表达式括在括号中,以便 exec 适用于两个匹配项。

这是一个类似的问题:`find -name` 匹配多个模式的模式

find /home6/movies/ \( -name '*.mp4' -o -name '*.mkv' \) -exec mv {} /home6/archive/ \;

0
投票

为什么我们需要包含( -name '.mp4' -o -name '.mkv' ),请指教

© www.soinside.com 2019 - 2024. All rights reserved.