慣性聚合 高效追蹤和閱讀你感興趣的部落格、新聞、科技資訊
閱讀原文 在慣性聚合中打開

推薦訂閱源

量子位
Stack Overflow Blog
Stack Overflow Blog
人人都是产品经理
人人都是产品经理
The GitHub Blog
The GitHub Blog
Engineering at Meta
Engineering at Meta
Vercel News
Vercel News
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Y
Y Combinator Blog
The Cloudflare Blog
Last Week in AI
Last Week in AI
B
Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Tailwind CSS Blog
V
Visual Studio Blog
博客园 - 三生石上(FineUI控件)
小众软件
小众软件
Google DeepMind News
Google DeepMind News
D
DataBreaches.Net
博客园 - 司徒正美
B
Blog RSS Feed
Microsoft Azure Blog
Microsoft Azure Blog
罗磊的独立博客
Hugging Face - Blog
Hugging Face - Blog
L
LangChain Blog

阮一峰的网络日志

科技爱好者周刊(第 396 期):互联网通信的替代方案 科技爱好者周刊(第 396 期):互联网通信的替代方案 - 阮一峰的网络日志 科技爱好者周刊(第 395 期):软件开发的第三种方式 科技爱好者周刊(第 395 期):软件开发的第三种方式 - 阮一峰的网络日志 科技爱好者周刊(第 393 期):脑腐状态 科技爱好者周刊(第 392 期):axios 投毒与好莱坞式骗术 科技爱好者周刊(第 391 期):AI 的贫富分化 科技爱好者周刊(第 390 期):没有语料,大模型就是智障 套壳中国大模型撑起500亿美元估值?扒一扒 Cursor 的"套壳"疑云 科技爱好者周刊(第 389 期):未来如何招聘程序员 科技爱好者周刊(第 388 期):测试是新的护城河 零安装的"云养虾":ArkClaw 使用指南 科技爱好者周刊(第 387 期):你是领先的 科技爱好者周刊(第 386 期):当外卖员接入 AI 字节全家桶 Seed 2.0 + TRAE 玩转 Skill 科技爱好者周刊(第 385 期):马斯克害怕中国车企吗? 智谱旗舰 GLM-5 实测:对比 Opus 4.6 和 GPT-5.3-Codex 科技爱好者周刊(第 384 期):为什么软件股下跌 科技爱好者周刊(第 383 期):你是第几级 AI 编程 Kimi 的一体化,Manus 的分层 科技爱好者周刊(第 382 期):独立软件的黄昏 AI native Workspace 也许是智能体的下一阶段 科技爱好者周刊(第 381 期):中国 AI 大模型领导者在想什么 科技爱好者周刊(第 380 期):为什么人们拥抱"不对称收益" 科技爱好者周刊(第 379 期):《硅谷钢铁侠》摘录 我如何用 AI 处理历史遗留代码:MiniMax M2.1 升级体验 科技爱好者周刊(第 378 期):预测是新的互联网热点 科技爱好者周刊(第 377 期):14万美元的贫困线 科技爱好者周刊(第 376 期):太空数据中心的争议 科技爱好者周刊(第 375 期):一扇门的 Bug
Termux 入门教程:架设手机 Server 下载文件
阮一峰 · 2019-07-23 · via 阮一峰的网络日志

手机文件,比如照片和视频,如何下载到桌面电脑?

普通用户可以使用手机线,将手机和电脑连起来。作为开发者,其实有更方便的方法,就是在手机架设一个 HTTP 服务,然后从桌面浏览器访问手机。

本文讲解如何使用 Termux 架设手机的 HTTP 服务器。

一、Termux 是什么?

Termux 是一个安卓手机的 Linux 模拟器,可以在手机上模拟 Linux 环境。它提供一个命令行界面,让用户与系统互动。

它就是一个普通的手机 App,可以从应用商店下载安装。不需要 root 权限,也不需要设置,打开就能使用。

二、环境准备

打开 Termux 以后,就是一个全屏的命令行界面。虽然可以用手机的触摸键盘输入命令,但还是推荐使用蓝牙键盘。

第一步,更新一下系统,保证使用最新版本。


# 连接远程仓库,获取软件包信息
$ apt update

# 更新本地已经安装的软件包
$ apt upgrade

第二步,测试系统。


# 安装 sl 软件包
$ apt install sl

# 运行
$ sl

上面命令安装测试包sl,然后运行。如果一切正常,会显示一个火车的命令行动画。

第三步,访问本机存储。

手机 App 默认只能访问自己的数据,如果要访问手机的存储,需要请求权限。


$ termux-setup-storage

执行上面的命令以后,会跳出一个对话框,询问是否允许 Termux 访问手机存储,点击"允许"。

这会在当前目录下生成一个storage子目录,它是手机存储的符号链接,后文下载文件就是到这个目录去下载。

三、软件包管理

除了apt命令,Termux 还提供pkg命令进行软件包管理。


# 安装软件包
$ pkg install [package name]

# 卸载软件包
$ pkg uninstall [package name]

# 列出所有软件包
$ pkg list-all

其实,pkg底层就是apt,只是运行前会执行一次apt update,保证安装的是最新版本。所以,apt install sl基本等同于pkg install sl

Termux 支持的软件包清单,可以到这里查看。

四、Node.js

下面,安装 Node.js。


$ apt install nodejs

安装完成后,就可以运行 JavaScript 脚本了。比如,新建一个脚本hello.js


// hello.js
console.log('hello world');

然后,执行这个脚本。


$ node hello.js
hello world

五、架设 Server

现在,通过 Node.js 运行 HTTP Server。

首先,安装 npm 模块http-server


$ npm install -g http-server

然后,运行 Server。


$ http-server

正常情况下,命令行会提示 Server 已经在 8080 端口运行了,并且还会提示外部可以访问的 IP 地址。

举例来说,手机的局域网 IP 是 192.168.2.6,那么我们通过桌面电脑的浏览器访问http://192.168.2.6:8080,就可以看到 Termux 的根目录了。进入下面的storage子目录,就可以下载手机文件了。

如果手机和电脑不在同一个局域网,那可以打开手机的热点功能,让桌面电脑通过手机热点上网,再访问手机的 HTTP Server。

这里顺便提一下,下面的命令可以从命令行查看手机的 IP 地址。


$ apt install net-tools
$ ifconfig

六、Python

不使用 Node.js,而使用其他方法架设 HTTP Server 也是可以的。下面演示 Python 的方法。


$ apt install python
$ python -m http.server 8080

然后,桌面电脑就可以访问手机了。

Termux 是非常强大的工具,除了上面的方法,还可以架设 Apache 服务器,或者通过其他途径(FTP、SSH、Rsync)访问手机,这里就不详细介绍了。

(完)