使用 qrcp 在你的手机和 Linux 之间传输文件
创始人
2024-03-02 09:00:58
0

qrcp 项目提供了一种快速地从你的 iPhone 或 Android 设备中复制文件到你的 Linux 电脑的方法,反之也可。

你是否在寻找一种快速复制文件的方法,从你的 iPhone 或 Android 移动设备到你的 Linux 电脑,或者从你的 Linux 电脑到你的设备?我最近发现了一个开源的应用,它很容易安装,并且传输文件只需一个二维码。

qrcp 项目提供了一个命令,可以在你的终端生成一个二维码,让你通过网络向你的电脑发送或接收文件。

在 Linux、Windows 或 Mac 上安装 qrcp

开发者 Claudio d’Angelis 以 MIT 许可证发布了 qrcp 应用。我发现它很容易安装,也很容易使用。它适用于 Linux、Windows 和 macOS,可以作为 RPM、DEB 或 tarball 下载。它为几乎所有的平台做了构建,包括树莓派。

如果你想在 Linux 上安装它,下载 RPM 或 DEB,并使用你的包管理器进行本地安装。例如,在 Fedora、CentOS 或 Mageia,或类似的平台上:

$ sudo dnf install ./qrcp*rpm

如果你只是想试试,你可以下载 tar.gz 压缩包并在本地运行它:

$ tar --extract --file qrcp*tar.gz
$ ./qrcp version
qrcp 0.x.y

设置 qrcp

你可以通过使用 --help 选项查看所有可用的 qrcp 选项:

$ qrcp --help
$ ./qrcp --help
Usage:
 qrcp [flags]
 qrcp [command]

Available Commands:
 completion  Generate completion script
 config      Configure qrcp
 help        Help about any command
 receive     Receive one or more files
 send        Send a file(s) or directories from this host
 version     Print version number and build information.
[...]

默认配置文件位于 ~/.config/qrcp/config.json ,你可以使用你喜欢的编辑器编辑,或从命令行调用配置向导来配置应用。

$ qrcp config

第一步是创建一个配置文件。qrcp config 命令将带你完成这个过程,但会问你几个问题。

第一个问题是要求你提供一个“完全限定域名”。如果你在一个不使用完全限定域名的本地网络上使用 qrcp(或者你不知道哪种方式),那么就把这个留空。qrcp 命令将使用你的本地 IP 地址代替。

下一个问题是提示你选择端口。大多数防火墙会阻止非标准的端口,但会将 8080 端口作为互联网流量的情况并不少见。如果你的防火墙屏蔽了 8080 端口,那么你还是要添加一个例外。假设你的系统使用 firewalld,你可以用这个命令允许 8080 端口的流量:

$ sudo firewall-cmd --add-port 8080/tcp --permanent

拒绝在“传输完成后保持网络连接”的选项,让 qrcp 生成一个随机路径。

假设你在一个可信的网络上,使用 HTTP(而不是 HTTPS)连接,那么你不必配置 TLS。

配置保存在 ~/.config/qrcp/config.json 中,并且之后可以编辑,所以如果你想改变设置,它很容易更新。

更新后的配置看起来像这样:

{
  "fqdn": "",
  "interface": "wlp0s20f3",
  "port": 8080,
  "keepAlive": false,
  "path": "",
  "secure": false,
  "tls-key": "",
  "tls-cert": "",
  "output": "/home/don"
}

用 qrcp 传输文件

现在你已经准备好从你的 Linux 电脑向你的移动设备发送一个文件。在这个例子中,我使用了我的 iPhone,它完全不支持 Linux,这是臭名昭著的。这个过程在安卓设备上是完全一样的。

我是这样做的。首先,我在我的电脑上创建一个示例文件:

$ echo "Hello world"> ~/example.txt

接下来,我使用 send 子命令将文件从我的 Linux 电脑发送到我的手机:

Linux~$ qrcp send example.txt

使用 qrcp send example.txt 发送文件的例子(CC BY-SA 4.0)

我打开我的相机应用(在 Android 上,我使用一个保护隐私的专用二维码扫描器),iPhone 扫描二维码并在我的手机上启动 Safari 浏览器。最后,我点击“下载”按钮。

example download

下载示例 .txt 文件(CC BY-SA 4.0)

用 qrcp 接收文件

接收文件也一样简单,只是命令略有不同:

$ qrcp receive

example of receiving a file

使用 qrcp receive 命令接收一个文件(CC BY-SA 4.0)

我扫描了二维码,它再次启动了我手机上的 Safari 浏览器,但这次出现了一些不同,因为我正在将文件从我的 iPhone 发送到 Linux 电脑上。

example of selecting a file

选择一个要传输的文件(CC BY-SA 4.0)

我点击“选择文件”,它让我选择想发送的文件。

file appears in default location

文件被下载到默认位置(CC BY-SA 4.0)

发送文件后,是在我的配置中指定的默认位置找到了文件。

尝试 qrcp

项目文档很简短但已足够,除了最初提出这个想法的 Claudio d’Angelis 之外,它还有开发者社区的支持。社区欢迎你加入他们,该应用将改变你对移动设备之间文件传输的看法。试试吧!


via: https://opensource.com/article/21/11/transfer-files-phone-linux

作者:Don Watkins 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

Ansible在传输文件的...
在Ansible中,可以使用copy模块来传输文件,并使用recu...
2024-11-06 16:01:58
快速学习:Linux中传输...
本文详细介绍了10种利用scp命令在Linux系统中进行文件传输的...
2024-10-28 16:01:36
Android设备之间是否...
是的,可以使用scp命令在Android设备之间传输文件,但是需要...
2024-10-10 10:30:48
Android到Windo...
要解决Android到Windows USB文件传输时文件丢失的问...
2024-10-07 02:32:04
Android - 如何在...
在Android中,可以使用HTTP协议来在服务器和客户端之间传输...
2024-09-30 09:31:34
axios无法使用新的Fo...
使用axios发送文件数据时,可以使用新的FormData()来创...
2024-09-29 02:30:30

热门资讯

“Linux 中国” 开源社区... 这是一个艰难的决定 —— 这不是调侃,而是当你真正做出改变了你十几年生活轨迹的决定时,你就会明白这个...
硬核观察 #1263 德国铁路... #1 德国铁路公司招聘 Windows for Workgroups 3.11 管理员该职位要求了解...
人工智能教程(七):Sciki... 在本系列的 上一篇文章 中,我们用 TensorFlow 构建了第一个神经网络,然后还通过 Kera...
关闭 WSL 中正在运行的 L... 以下是使用 WSL 关闭在 Windows 内运行的 Linux 系统的不同方法。你使用 WSL 在...
MX Linux 23.2 “... 最新的 MX Linux 23.2 小版本更新带来了基本的改进和新增功能。MX Linux 推出了 ...
硬核观察 #1262 网络上最... #1 网络上最古老的软件存档库之一即将关闭美国新墨西哥州立大学(NMSU)最近宣布,即将于 2024...
如何在 RHEL 上通过绑定配... 在 Linux 中,你可以根据自己的需要创建高级网络设置,如 网络绑定 Network Bondin...
Linux Matrix 消息... Matrix 用户可以升级 Fractal 6 了!Fractal 是目前 最好的 Matrix 客...
如何通过 VLC 使用字幕 使用 VLC 媒体播放器播放和管理字幕的新手指南。我是一个超级动漫迷,如果你想观看最新的剧集,那么你...
硬核观察 #1261 X 计划... #1 X 计划在奥斯汀建立内容审核总部据报道,该部门将招聘 100 名全职员工,将主要关注 CSE ...