You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

需移动Downloads及子文件夹中含关键词的文件,mv应加什么参数?

递归移动指定文件的解决方案

mv命令本身没有递归遍历子目录并匹配文件的功能,加-r/-R这类参数也无法实现需求(这些参数仅用于移动目录本身,而非遍历子目录查找文件)。要完成你的需求,需要结合find命令定位所有目标文件,再配合mv执行移动操作:

在当前的Users/name/Downloads/Subfolder目录下,执行以下命令之一:

方式一(逐个处理文件)

find ../.. -type f -iname "*Keyword*.jpg" -exec mv {} ../../NewDirectory/Pictures/ \;

方式二(批量处理文件,效率更高)

find ../.. -type f -iname "*Keyword*.jpg" -exec mv {} ../../NewDirectory/Pictures/ +

命令说明

  • ../..:指定搜索的起始目录为Downloads(当前目录往上两级)
  • -type f:仅搜索文件,避免误操作目录
  • -iname "*Keyword*.jpg":忽略大小写匹配名称包含指定关键词的.jpg文件;如果需要区分大小写,替换为-name
  • -exec mv {} 目标路径 \;:对每个找到的文件单独执行mv命令,{}会被替换为找到的文件路径;用+代替\;会将多个文件一次性传给mv,减少进程启动次数,效率更高

你之前的mv *Keyword*.jpg命令无效,是因为Shell通配符*只会匹配当前目录下的文件,不会递归遍历子目录,所以Subfolder里的目标文件没被匹配到。

内容的提问来源于stack exchange,提问作者ProclaimedMarvel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 20:48:21