Termux終端模擬器是一款功能強(qiáng)大到可以真實(shí)對(duì)各種操作系統(tǒng)進(jìn)行安裝使用的軟件,軟件在使用的時(shí)候用戶(hù)不需要授予過(guò)多的權(quán)限,甚至不需要對(duì)root權(quán)限進(jìn)行授予就可以開(kāi)始使用本軟件,真實(shí)的模擬終端設(shè)備,在手機(jī)上就可以使用Linux系統(tǒng),軟件平臺(tái)為首次使用的用戶(hù)提供了詳細(xì)的使用教程信息,能夠幫助新用戶(hù)快速上手各種功能的使用。
Termux終端模擬器使用教程
一、Termux 是什么?
Termux[2] 是一個(gè)安卓手機(jī)的 Linux 模擬器,可以在手機(jī)上模擬 Linux 環(huán)境。它提供一個(gè)命令行界面,讓用戶(hù)與系統(tǒng)互動(dòng)。
它就是一個(gè)普通的手機(jī) App,可以從應(yīng)用商店下載安裝。不需要 root 權(quán)限,也不需要設(shè)置,打開(kāi)就能使用。

二、環(huán)境準(zhǔn)備
打開(kāi) Termux 以后,就是一個(gè)全屏的命令行界面。雖然可以用手機(jī)的觸摸鍵盤(pán)輸入命令,但還是推薦使用藍(lán)牙鍵盤(pán)。
第一步,更新一下系統(tǒng),保證使用最新版本。
# 連接遠(yuǎn)程倉(cāng)庫(kù),獲取軟件包信息
$ apt update
# 更新本地已經(jīng)安裝的軟件包
$ apt upgrade
第二步,測(cè)試系統(tǒng)。
# 安裝 sl 軟件包
$ apt install sl
# 運(yùn)行
$ sl

上面命令安裝測(cè)試包sl,然后運(yùn)行。如果一切正常,會(huì)顯示一個(gè)火車(chē)的命令行動(dòng)畫(huà)。
第三步,訪(fǎng)問(wèn)本機(jī)存儲(chǔ)
手機(jī) App 默認(rèn)只能訪(fǎng)問(wèn)自己的數(shù)據(jù),如果要訪(fǎng)問(wèn)手機(jī)的存儲(chǔ),需要請(qǐng)求權(quán)限。
$ termux-setup-storage
執(zhí)行上面的命令以后,會(huì)跳出一個(gè)對(duì)話(huà)框,詢(xún)問(wèn)是否允許 Termux 訪(fǎng)問(wèn)手機(jī)存儲(chǔ),點(diǎn)擊“允許”。
這會(huì)在當(dāng)前目錄下生成一個(gè)storage子目錄,它是手機(jī)存儲(chǔ)的符號(hào)鏈接,后文下載文件就是到這個(gè)目錄去下載。

三、軟件包管理
除了apt命令,Termux 還提供pkg命令進(jìn)行軟件包管理。
# 安裝軟件包
$ pkg install [package name]
# 卸載軟件包
$ pkg uninstall [package name]
# 列出所有軟件包
$ pkg list-all
其實(shí),pkg的底層[3]就是apt,只是運(yùn)行前會(huì)執(zhí)行一次apt update,保證安裝的是最新版本。所以,apt install sl基本等同于pkg install sl。
Termux 支持的軟件包清單,可以到這里[4]查看。
四、Node.js
下面,安裝 Node.js。
$ apt install nodejs
安裝完成后,就可以運(yùn)行 JavaScript 腳本了。比如,新建一個(gè)腳本hello.js。
// hello.js
console.log('hello world');
然后,執(zhí)行這個(gè)腳本。
$ node hello.js
hello world
五、架設(shè) Server
現(xiàn)在,通過(guò) Node.js 運(yùn)行 HTTP Server。
首先,安裝 npm 模塊http-server[5]。
$ npm install -g http-server
然后,運(yùn)行 Server。
$ http-server
正常情況下,命令行會(huì)提示 Server 已經(jīng)在 8080 端口運(yùn)行了,并且還會(huì)提示外部可以訪(fǎng)問(wèn)的 IP 地址。

舉例來(lái)說(shuō),手機(jī)的局域網(wǎng) IP 是 192.168.2.6,那么我們通過(guò)桌面電腦的瀏覽器訪(fǎng)問(wèn)http://192.168.2.6:8080,就可以看到 Termux 的根目錄了。進(jìn)入下面的storage子目錄,就可以下載手機(jī)文件了。

如果手機(jī)和電腦不在同一個(gè)局域網(wǎng),那可以打開(kāi)手機(jī)的熱點(diǎn)功能,讓桌面電腦通過(guò)手機(jī)熱點(diǎn)上網(wǎng),再訪(fǎng)問(wèn)手機(jī)的 HTTP Server。
這里順便提一下,下面的命令可以從命令行查看手機(jī)的 IP 地址。
$ apt install net-tools
$ ifconfig
六、Python
不使用 Node.js,而使用其他方法架設(shè) HTTP Server 也是可以的。下面演示 Python 的方法。
$ apt install python
$ python -m http.server 8080
然后,桌面電腦就可以訪(fǎng)問(wèn)手機(jī)了。
Termux終端模擬器安裝 Python
1、在 Termux 中輸入 pkg install python 回車(chē)安裝Python,出現(xiàn)如下圖。
2、輸入 Y 回車(chē),出現(xiàn)下圖。
3、等待,等到出現(xiàn)下圖代表安裝 Python 成功。
4、到這恭喜您 Python 環(huán)境已經(jīng)安裝完了,趕快運(yùn)行個(gè)程序試試吧!
Termux終端模擬器公網(wǎng)訪(fǎng)問(wèn)
1、我們?nèi)绾伟咽謾C(jī)中的端口暴露到公網(wǎng)呢,有兩種方式都很方便:
2、使用ssh反向代理(使用autossh解決隧道的穩(wěn)定性問(wèn)題)
3、使用ngrok(使用ngrok arm版本)
4、如此一來(lái)手機(jī)中運(yùn)行的網(wǎng)站你就可以在公網(wǎng)訪(fǎng)問(wèn)它,當(dāng)然你也可以把ssh端口暴露到外網(wǎng),這樣你可以在任何有網(wǎng)絡(luò)連接的地方連接到你的手機(jī)里。前提是Termux處于運(yùn)行狀態(tài)。
Termux終端模擬器提高輸入效率
1、打開(kāi)Termux之后,我們面對(duì)的是一個(gè)命令行界面,常用的手機(jī)輸入工具,搜狗之類(lèi)的,并沒(méi)有功能鍵,無(wú)法輸入esc、ctrl、alt、tab…
2、Termux提供了一些解決方案:
3、音量鍵(-)模擬Ctrl,所以你要中止輸入到一半的命令,只好按下音量鍵(-)+c即可(等效于Ctrl+c)
4、你也可以使用音量鍵(+)+q顯示擴(kuò)展鍵:ESC、CTR、ALT、TAB、-、/、|
5、你有多種方式提高輸入效率:
----使用藍(lán)牙鍵盤(pán)
----Hacker's Keyboard: 一個(gè)輸入法app,提供一切你需要的按鍵,方便地在Android上輸入快捷鍵組合、特殊符號(hào),提高
----Coding和CLI的效率
----在電腦中使用ssh接入Termux
----安裝Jupyter Notebook,在電腦中使用瀏覽器連接Termux(可以在網(wǎng)頁(yè)中使用terminal)
Termux終端模擬器優(yōu)勢(shì)
1、安全:使用 OpenSSH 的 ssh 客戶(hù)端訪(fǎng)問(wèn)遠(yuǎn)程服務(wù)器。在一個(gè)開(kāi)源解決方案中,Termux 將標(biāo)準(zhǔn)包與精確的終端仿真結(jié)合。在 Bash、FISH 或 Zsh 和 Nano、Emacs 或 Vim 之間選擇。GREP 通過(guò)你的短信收件箱。使用 cURL 訪(fǎng)問(wèn) API 端點(diǎn),并使用 rsync 在遠(yuǎn)程服務(wù)器上存儲(chǔ)聯(lián)系人列表的備份
2、自定義:通過(guò)從 Debian 和 UbuntuGNU/Linux 中知道的 APT 包管理系統(tǒng)安裝你想要的東西
3、移植性:Termux 中提供的軟件包與 Mac 和 Linux 上的軟件包相同最新版本的 Perl、Python、Ruby 和 Node.js 都是可用的
4、擴(kuò)大規(guī)模:連接藍(lán)牙鍵盤(pán),并將設(shè)備連接到外部顯示器,如果需要,Termux 支持鍵盤(pán)快捷鍵,并有完整的鼠標(biāo)支持
5、可修補(bǔ)的:通過(guò)使用 Clang 編譯 C 文件進(jìn)行開(kāi)發(fā),并使用 CMake 和 pkg-config 構(gòu)建自己的項(xiàng)目。如果陷入困境并需要調(diào)試,GDB 和 strace 都是可用的