你是否经历过这样的窘境?在咖啡馆、会议室或客户现场,急需将一个大文件或文件夹从你的电脑传到同事、客户的设备上。没有 U 盘,登录微信 / 钉钉文件传输大小,拉网线配置共享更是天方夜谭。别急,是时候认识一下 croc 这个神器了。
它是一款用 Go 语言编写的开源命令行文件传输工具,其设计哲学直击痛点:像用 U 盘一样简单,像专业工具一样可靠。 无需搭建服务器,无需处于同一网络,只需一个共同的 “密码”,就能建立端到端的加密直连。
一、croc 的核心魅力:为什么是它?
2.端到端加密:采用 PAKE 加密协议,传输过程中的数据全是乱码。中继服务器看不到你的文件内容,隐私无忧。
3. 全平台通用:Windows、macOS、Linux 命令完全一致,甚至在安卓手机上通过 Termux 也能使用。
4.断点续传:传输大文件时网络断了?重连后它会从断开的地方继续,无需重头再来。
5.智能文件夹处理:直接发送整个文件夹,自动保持目录结构。还可以排除缓存文件等无用数据,提升效率。
二、极速上手:五分钟内学会
1. 安装 croc
无论你用什么系统,安装都极其简单。
macOS 用户:
bash
brew install croc
Windows 用户(推荐使用 Scoop):
bash
scoop install croc
Linux/macOS 用户(一键脚本):
bash
curl https://getcroc.schollz.com | bash
其他方式:你也可以直接从 GitHub Releases 页面下载预编译的二进制文件,或者通过 Go 工具链安装。
2. 开始传输:就像对暗号
假设你要传输一个名为 演示方案.pdf 的文件。
在发送方电脑上:
bash
croc send 演示方案.pdf
执行后,命令行会显示一个由三个随机单词组成的代码短语,例如:
text
Sending '演示方案.pdf' (15 MB) Code is: coral-neat-tiger On the other computer run croc coral-neat-tiger
在接收方电脑上:
只需输入你看到的那个代码短语:
bash
croc coral-neat-tiger
接下来,croc 会开始建立连接、校验文件,然后传输就会开始!进度条会让你对状态一目了然。
三、进阶技巧:让传输更高效、更安全
基础的 “发送 - 接收” 模式已经解决了 90% 的问题,但 croc 的潜力远不止于此。
1. 传输整个文件夹,并排除无用文件
传输一个网站源码文件夹,但想跳过庞大的 node_modules 和虚拟环境 .venv?
bash
croc send --exclude "node_modules, .venv, *.tmp" ./my-project
2. 使用自定义密码和强加密
自动生成的密码虽然方便,但自定密码更安全。你还可以指定使用更强的 P-521 椭圆曲线加密。
bash
# 发送方 croc send --code my-super-secret-password-123 --curve p521 财务报表.xlsx # 接收方 croc --code my-super-secret-password-123 --curve p521
3. 在受限网络中使用代理
如果你的网络环境受限(如公司内网),可以通过 SOCKS5 代理进行传输。
bash
croc --socks5 "127.0.0.1:9050" send 重要文档.zip
四、真实场景体验
- 场景 A:紧急演示 – 在客户公司,用你的 MacBook 给对方的 Windows 投影仪传一个 2GB 的视频演示文件。没有 HDMI 转接头。
croc在 1 分钟内建立连接并开始传输,救场成功。 - 场景 B:远程协作 – 与异地的同事同步一个 4GB 的虚拟机镜像,家中网络不稳。
croc的断点续传功能在三次网络波动后,依然完整地交付了文件。 - 场景 C:安全传输 – 需要给法务部门发送一份敏感合同。使用
--curve p521强加密选项,让你在传输时高枕无忧。
总结
在云盘、IM 工具泛滥的今天,croc 用一种近乎 “复古” 的直连方式,提醒我们文件传输的本质可以如此简单和高效。它不依赖任何中心化的账户体系,不绑架你的数据,只是纯粹地、安全地完成 “发送” 和 “接收” 这个核心任务。
下次当你再为传文件而烦恼时,不妨打开终端,试试 croc。这条简单的命令,很可能成为你数字工具箱中最得力、最优雅的助手之一。
