bcmr v0.6.3
bcmr · 更好的 cp / mv / rm 本地与 ssh · 同一条命令 v0.6.3 · 2026.05.13
§ 01 · 概览

复制. 移动. 删除.

bcmr 是 cp / mv / scp 的现代替代品。每次写入流式 blake3 校验,崩溃后可续传,本地路径和 ssh 路径在同一条命令里 —— 一个命令,两端都校验过。

↳ 安装 v0.6.3 阅读文档 brew install Bengerthelorf/tap/bcmr
01
每个字节写入时都在两端哈希,--verify 升级为完整的两遍重读。
02
杀进程、拔网线,重新执行同一条命令,从上一个已校验的分块继续。
03
bcmr copy a.txt user@host:/b/ 和 bcmr copy a.txt /b/ 是同一个动词。相同的参数,相同的保证。
04
linux 上用 copy_file_range,apfs 上用 clone_file,稀疏文件检测,≥ 16 mib 的内容寻址去重。
§ 02 · 同一条命令

本地 ssh,
同一条命令。

cp 和 scp 把本地和远程当成两个世界。bcmr 只当它们是两种路径。bcmr copy 在 3 mb 的本地拷贝和 300 gb 的跨机房传输里是同一条命令。

zsh · bcmr 0.6.3
~/work
§ 03 · 特性

六件事
它都做对了。

这些是承诺,不是描述。如果你发现任何一条被违反了,那就是我们想听到的 bug。

01
blake3 无处不在
每个分块都在两端被哈希。只有校验通过的传输,bcmr 才会告诉你成功了。
02
崩溃 · 续传
杀进程、拔线、丢 ssh 会话。重新执行同一条命令,bcmr 从上一个已校验的字节继续。
03
本地 + ssh
一个动词,两个宇宙。本地路径像 cp,远程路径像 scp。你不必再想「该用哪一个」。
04
reflink · 稀疏
apfs / btrfs / xfs / zfs 上使用 clone_file / reflink / copy_file_range。100 gb 的拷贝在支持的文件系统上只要毫秒。
05
lz4 · zstd · dedup
可选的线路压缩 lz4 / zstd。内容寻址去重避免发送你已经有过的字节。
06
json + tui
脚本里用 --json,终端里用 --tui。同一个二进制、同一套命令 —— 只是外壳不同。
0×
对比 rsync · 小文件
0mib
dedup · 最小块
0
支持的平台数
blake3
每个分块 · 已哈希
§ 04 · 开始

一个动词。
已校验。
可续传。

mit 授权 · 无遥测 · 自 2024 年开源