Skip to content

Linux 批量移动视频文件

使用 find 命令批量查找指定视频格式文件,并统一移动到当前目录,同时处理路径字符避免冲突。

支持的文件类型

  • avi
  • mp4
  • mkv
  • mov
  • flv

批量移动脚本

bash
find -type f \( -name "*.avi" -o -name "*.mp4" -o -name "*.mkv" -o -name "*.mov" -o -name "*.flv" \) -print0 | while read -d $'\0' i; do
  v=${i:2}
  q=${v//\//-}
  mv "$i" ./"$q"
done

逻辑说明

1. 查找文件

使用 find 递归搜索指定视频格式:

bash
find -type f \( ... \)

2. 防止空格与特殊字符问题

使用 -print0 + read -d $'\0' 处理文件名安全性。

3. 路径重命名

bash
q=${v//\//-}

将路径中的 / 替换为 -,避免目录冲突。

4. 移动文件

bash
mv "$i" ./"$q"

统一移动到当前目录。

使用场景

  • 视频文件整理
  • 批量归档下载文件
  • 目录结构扁平化处理
  • NAS / 服务器文件清理

注意事项

  • 会将所有文件移动到当前目录,可能覆盖同名文件
  • 建议先取消 mv,用 echo 测试路径
  • 大量文件时注意磁盘空间
最近更新

基于 VitePress + Teek 主题构建