使用croc实现任意两台电脑(或服务器)之间互传文件

使用croc实现任意两台电脑(或服务器)之间互传文件

croc是一个很方便的传输工具,可用于任何两台已连网设备之间的文件传输,包括但不限于:

  • 1、个人电脑与个人电脑互传文件;
  • 2、个人电脑与远程服务器互传文件;
  • 3、两个远程服务器之间互传文件;

安装

服务器端安装(会被安装到/usr/local/bin/下)

curl https://getcroc.schollz.com | bash

macOS端安装

brew install croc

其它系统安装请参考:https://github.com/schollz/croc/blob/main/README.md

使用

使用规则:必须先执行发送文件命令,执行完发送文件命令,会自动生成接收文件命令,你只需要复制粘贴到接收端运行就行。

上传文件
比如我要上传文件到服务器,则说明是从我本地电脑发送文件到服务器,所以我必须在本地电脑执行发送命令

# 发送文件
croc send /path/to/filename

# 也支持传输目录
croc send /path/to/folder

以上命令运行后,它会输出类似以下的命令,你把它复制到接收端(即你服务器端)运行即可

croc 8350-kilo-giraffe-bonjour

下载文件
下载文件就是从服务器发送文件到本地电脑,那么你要在服务器执行发送命令

croc send /path/to/filename

等它输出接收命令后,你复制接收命令到你本地电脑上执行即可下载(接收命令是类似croc 1566-campus-charlie-parker这样的,每次后面那串码都不一样)。

传输原理

它的传输是通过中继服务器来传输的,默认使用官方公共中继服务器,你可以搭建自己的中继服务器。

基本原理croc命令内置中继服务器域名(也可能是有域名列表api),当你执行croc send filename时,它会跟中继服务器建立连接,并且返回一串唯一码,当你在接收端执行croc 唯一接收码时,它也会连接同一个中继服务器,由于中继服务器之前已经和发送端建立了连接,于是当接收端拿“唯一接收码”去接收时,中继服务器就会把发送端与接收端连通,于是文件开始发送。

方便程度

非常方便,比起scp/rsync这些来说,方便的多,但比起trzsz来说,还是差点,因为trzsz始终在服务器端操作,无需切换到本地电脑端。

但它比trzsz好的一点是,它可以在任何两台设备之间传输,当然也就包括两台服务器之间,而trzsz只能本地电脑与服务器之间互传文件,无法实现服务器到服务器之间的传输。

安全性

由于通过了中继服务器,安全性从理论上来说是无法保障的,但是你可以自己搭建中转服务器,不过为了传个文件我还去搭建中转服务器,我觉得还是算了吧,如果是强需求另说。并且如果传输的文件大的话,还会消耗比较多的中继服务器的流量(流量是要花钱的)。

打赏
订阅评论
提醒
guest

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

0 评论
内联反馈
查看所有评论
0
希望看到您的想法,请您发表评论x

扫码在手机查看
iPhone请用自带相机扫
安卓用UC/QQ浏览器扫

使用croc实现任意两台电脑(或服务器)之间互传文件