新闻中心
Linux 下怎么批量复制上万张图片(高效方法)
推荐rsync+--files-from方案:先用find生成图片路径列表,再通过rsync单次扫描批量复制,避免重复系统调用,兼顾速度、安全与通用性。

直接用 cp 复制上万张图片会非常慢,尤其当源目录文件极多、路径深或目标盘 I/O 负载高时。真正高效的核心不是“换命令”,而是减少系统调用开销 + 并行 + 避免重复遍历。下面几种方法按推荐顺序排列,兼顾通用性、安全性和速度。
用 rsync + --files-from 实现单次扫描 + 并行复制
这是最稳又够快的方案。先生成文件列表(只扫一次),再让 rsync 批量读取并复制,避免 cp 对每个文件都 stat/open/close 一遍。
- 生成所有图片路径列表(假设全是 .jpg/.png):
find /source/dir -type f \( -iname "*.jpg" -o -iname "*.png" \) > filelist.txt
- 用 rsync 批量复制(自动跳过已存在且内容一致的文件):
rsync -* --files-from=filelist.txt / /dest/dir/
注意:/ 是根路径占位符,rsync 会把 filelist.txt 中的相对路径(如 photos/2025/001.jpg)按源目录为基准拼接。若 list 是绝对路径,需加 --relative 或改用 rsync -a --files-from=filelist.txt / /dest/dir/ 并确保 list 内路径以 / 开头。
用 parallel + cp 实现真正多线程复制
单个 cp 是单线程,而 parallel 可把文件列表分片并发执行,特别适合多核 CPU 和 NVMe 盘。
- 安装 parallel(Ubuntu/Debian):
sudo apt install parallel
- 并发复制(限制 8 个进程,防止 I/O 打满):
find /source/dir -type f \( -iname "*.jpg" -o -iname "*.png" \) | parallel -j 8 cp {} /dest/dir/{/}{/} 表示取文件名(不含路径),可保留原名;若要保留完整子目录结构,改用 rsync -a --relative 更稳妥。
星辰Agent
科大讯飞推出的智能体Agent开发平台,助力开发者快速搭建生产级智能体
378
查看详情
用 tar 管道流式复制(零磁盘临时文件,适合同盘或高速网络)
不落地生成中间文件,内存+管道直传,对 SSD 或远程 NFS/CIFS 共享特别友好。
- 一行搞定(自动过滤图片,保留目录结构):
find /source/dir -type f \( -iname "*.jpg" -o -iname "*.png" \) -print0 | tar -c --null -T - | (cd /dest/dir && tar -x)
优点:无临时文件、stat 开销小、支持长路径和特殊字符;缺点:无法跳过已有文件,全量覆盖。如需增量,还是优先选 rsync。
避坑提醒
- 别用
cp -r整目录 —— 它会递归 stat 每个子目录,哪怕里面全是空文件夹 - 慎用
cp --reflink=always(仅 Btrfs/XFS)—— 虽快但复制后仍是硬链接,删源文件会影响目标 - 复制前先
df -h确认目标空间足够,万级图片容易误估体积 - 关键数据务必加
--dry-run(rsync)或先试 100 张,验证路径和权限
基本上就这些。实际速度取决于你的存储类型(HDD 还是 NVMe)、CPU 核数、是否跨文件系统。一般 rsync + files-from 或 parallel + cp 能比原始 cp 快 3–10 倍,而且稳定可控。
以上就是Linux 下怎么批量复制上万张图片(高效方法)的详细内容,更多请关注其它相关文章!
# 跳过
# 短视频seo设计方案
# 西城网站建设怎样获客
# 营销号推广效果
# 德阳网站页面优化公司
# 带app的网站建设方案
# 丽江seo优化方案
# 金华酱香型白酒网站建设
# 网站优化基本诊断模式
# 乌海企业网站建设报价
# 禅城搜索SEO网络推广
# 临时文件
# linux
# 编辑器
# 文件列表
# 多核
# 服务管理
# 多线程
# 运行环境
# 万张
# 递归
# 排列
# ubuntu
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
Adobe PDF表单中利用J*aScript解析与格式化日期组件的教程
Win10桌面图标出现小盾牌怎么办 Win10去除UAC图标教程【解决】
J*a递归快速排序中静态变量的状态管理与陷阱
J*aScript中localStorage数据的获取、清洗与格式化教程
利用5118提升短视频内容效果_5118短视频关键词优化方法
韩剧圈正版入口页面_韩剧圈官网登录链接
Fabric模组开发:自定义物品与物品组的现代管理方法
LocoySpider如何部署到云服务器_LocoySpider云部署的远程配置
《刺客信条:影》PS5 Pro和Switch 2画面对比
QQ邮箱官方邮箱登录入口 QQ邮箱网页版快速访问
Win11蓝牙耳机断连怎么解决 Win11蓝牙设置重新配对与驱动更新【技巧】
NVIDIA股价11月重挫12%:下月有望好转 但难回5万亿美元巅峰
Pandas DataFrame:高效添加条件计算列
CSS布局中意外空白:解决padding-top导致的顶部间距问题
拷贝漫画电脑版官网入口 拷贝漫画(PC版)在线直达
J*a最大堆Heapify方法修复:索引计算与边界条件深度解析
浏览器打开即用 美图秀秀网页版入口
极速漫画官方主页网址 极速漫画漫画在线浏览官网链接
天眼查企业查询官网入口 天眼查官方网页版查询
机构:以往存储涨价周期小米利润率实际上有所改善 能转嫁给消费者等
淘宝支付提示失败如何解决 淘宝支付流程优化方法
“音游” × “怪文书” 题材的节奏冒险游戏 《晕晕电波症候群》确定于2026年4月发售!
神庙逃亡小游戏在线玩 神庙逃亡小游戏入口
迅雷下载到U盘速度很慢怎么办_迅雷U盘下载慢优化方法
Go Martini框架:动态服务解码后的图片内容
J*aScript中正确使用querySelectorAll与复杂CSS选择器
魅族20怎样在浏览器开无图省流_iPhone魅族20浏览器开无图省流【流量节省】
Golang如何实现状态模式管理对象状态_Golang State模式实现技巧
《马克思佩恩3》早期版本曝光 UI设计曾多次调整!
Mac怎么使用表情符号_Mac Emoji快捷键面板
uc浏览器网页版极速入口 uc网页浏览器网页版流畅体验
qq邮箱日历功能怎么用_创建日程与会议邀请的技巧
Go语言JSON解析深度指南:动态访问与结构体映射实践
sublime侧边栏怎么增强功能_SideBarEnhancements for sublime安装与配置
如何有效阻止外部脚本意外修改内联样式的高度属性
《噬血代码2》新预告片发布 展示游戏剧情
2026年CSGO开箱网站推荐 CSGO开箱平台精选
怎样更改Windows系统的默认安装路径_避免C盘爆满的终极设置【技巧】
使用 Pandas 高效处理 .dat 文件:数据清洗与数值计算实战
b站如何看历史记录_b站观看历史找回方法
fishbowl官网免费版 fishbowl养鱼网站入口
AO3访问入口汇总 AO3网页版同人作品一键直达
J*aScript对象创建方式_J*aScript设计模式应用
荣耀Play7T运行卡顿解决_荣耀Play7T性能优化
Yandex搜索引擎官方地址 俄罗斯网络世界的主要入口
CSS布局:解决全屏元素100%尺寸与外边距导致的页面溢出问题
163邮箱网页版入口导航平台 163邮箱网页版登录入口官网导航
如何设置Windows Defender的定时扫描_计划任务实现自动杀毒【安全】
2025俄罗斯Yandex最新入口 官方网站地址及浏览器下载指南
J*aScript中如何高效提取对象指定属性


2025-12-04
浏览次数:次
返回列表
find生成图片路径列表,再通过rsync单次扫描批量复制,避免重复系统调用,兼顾速度、安全与通用性。