本文共 1364 字,大约阅读时间需要 4 分钟。
公众号关注 “GitHubDaily”
设为 “星标”,每天带你逛 GitHub!
转自量子位
下面这张「二维码」,最近在 GitHub 上火了。
为什么这么火?
因为只要扫描二维码,通过 Wi-Fi,文件就可以在电脑和手机之间互传 — 文件传输助手。
Linux 传安卓,分分钟搞定。
打破系统之间的 “边界”,就是它最厉害之处。
那么,怎么就能通过一张二维码,就能完成文件传输呢?
简单来说,就是将 Web 服务器,绑定到随机端口上的 Wi-Fi 网络接口地址,然后为其创建一个处理程序。
这个处理程序会打印出来一张二维码,对文本进行编码:
http://{address}:{port}/{random_path}
大多数二维码应用程序,都能检测到解码文本中的 URL,并采取相应的行动 (即使用默认浏览器打开解码后的 URL)。
所以,当二维码被扫描之后,手机浏览器就会开始下载内容。来看下上手效果吧。
首先,是将文件发送到手机:
接下来,看看手机接收文件的效果:
需要注意的是,这个项目要用到的语言是 Go 1.8。
安装项目非常简单,一行代码就能搞定:
go get github.com/claudiodangelis/qrcp
或者,从 Releases 页面下载最新的二进制文件到 /usr/local/bin (或 $PATH 中的另一个位置) ,然后为二进制文件加入执行权限:
chmod +x /usr/local/bin/qrcp
要发送文件到手机,则输入:
qrcp MyDocument.pdf
若是要发送多个文件,也非常简单:
# Multiple filesqrcp MyDocument.pdf IMG0001.jpg
# A whole folderqrcp Documents/
也可以在传输之前,将文件压缩:
qrcp —zip LongVideo.avi
当接收文件时,qrcp 会提供一个 “上传页面” ,可以通过这个页面,从移动设备中选择文件。
接收文件到工作目录:
qrcp receive
将文件接收到特定目录:
# Note: the folder must existqrcp receive --output=/tmp/dir
提到文件传输,苹果和华为生态的小伙伴们可能就会表示不服了……
苹果 AirDrop,不香吗?
华为” 一碰传 “,不香吗?
确实,在自家系统生态内部还是非常 OK 的,但” 出了圈 “…… 可就不好说了。
或许你还会问,微信或 QQ 传送文件不就行了?
行,但是传输文件大小有限制,有些文件还会被压缩……
如果对于跨终端、跨设备、跨平台的文件传输,你有别的妙招,也别忘了分享给我们,笔芯~
GitHub 项目地址:https://github.com/claudiodangelis/qrcp
推荐阅读:又一神书面世:《无需计算机的计算机科学》!写一个开源的 macOS 软件可以赚多少钱?如果你觉得学习 Git 很枯燥,那是因为你还没玩过这款游戏!学不会设计模式,是因为你还没用过这个神奇的网站!新加坡总理的儿子,写了一本计算机入门书籍...
转载地址:http://huvii.baihongyu.com/