安卓使用 termux

简介

Termux是一个 Android 下一个高级的终端模拟器,开源且不需要 root,支持 apt 管理软件包,十分方便安装软件包,完美支持PythonPHPRubyGoNodejsMySQL等。随着智能设备的普及和性能的不断提升,如今的手机、平板等的硬件标准已达到了初级桌面计算机的硬件标准,用心去打造完全可以把手机变成一个强大的工具。

Google Play下载的版本比酷安要新,有能力建议下载Google PLay版本的。

基本操作

长按屏幕

显示菜单项(包括复制、粘贴、更多),此时屏幕出现可选择的复制光标

长按屏幕
├── COPY:复制
├── PASTE:更多
├── More:更多
   ├── Select URL: 选择网址
   └── Share transcipt: 分享命令脚本
   └── Reset: 重置
   └── Kill process: 杀掉当前终端会话进程
   └── Style: 风格配色
   └── Help: 帮助文档

从左向右滑动

显示隐藏式导航栏,可以新建、切换、重命名会话session和调用弹出输入法

显示扩展功能按键

扩展功能键是什么?就是PC端常用的按键如:ESC键,CTR键,TAB键,但是手机上难以操作的一些按键。

方法一

从左向右滑动,显示隐藏式导航栏,长按左下角的KEYBOARD

方法二

使用Termux快捷键:音量++Q

实用快捷键

Ctrl键是终端用户常用的按键 – 但大多数触摸键盘都没有这个按键。为此,Termux使用音量减小按钮来模拟Ctrl键。
例如,在触摸键盘上按音量减小+ L发送与在硬件键盘上按Ctrl + L相同的输入。

  • Ctrl+A -> 将光标移动到行首
  • Ctrl+C -> 中止当前进程
  • Ctrl+D -> 注销终端会话
  • Ctrl+E -> 将光标移动到行尾
  • Ctrl+K -> 从光标删除到行尾
  • Ctrl+L -> 清除终端
  • Ctrl+Z -> 挂起(发送SIGTSTP到)当前进程

音量加键也可以作为产生特定输入的特殊键

  • 音量加+E -> Esc键
  • 音量加+T -> Tab键
  • 音量加+1 -> F1(和音量增加+ 2→F2等)
  • 音量加+0 -> F10
  • 音量加+B -> Alt + B,使用readline时返回一个单词
  • 音量加+F -> Alt + F,使用readline时转发一个单词
  • 音量加+X -> Alt+X
  • 音量加+W -> 向上箭头键
  • 音量加+A -> 向左箭头键
  • 音量加+S -> 向下箭头键
  • 音量加+D -> 向右箭头键
  • 音量加+L -> | (管道字符)
  • 音量加+H -> 〜(波浪号字符)
  • 音量加+U -> _ (下划线字符)
  • 音量加+P -> 上一页
  • 音量加+N -> 下一页
  • 音量加+. -> Ctrl + \(SIGQUIT)
  • 音量加+V -> 显示音量控制
  • 音量加+Q -> 显示额外的按键视图

快速上手

基本命令

Termux除了支持apt命令外,还在此基础上封装了pkg命令,pkg命令向下兼容apt命令。apt命令大家应该都比较熟悉了,这里直接简单的介绍下pkg命令:

Bash

pkg search <query>              搜索包
pkg install <package>           安装包
pkg uninstall <package>         卸载包
pkg reinstall <package>         重新安装包
pkg update                      更新源
pkg upgrade                     升级软件包
pkg list-all                    列出可供安装的所有包
pkg list-installed              列出已经安装的包
pkg shoe <package>              显示某个包的详细信息
pkg files <package>             显示某个包的相关文件夹路径

目录环境结构

Bash

~ > echo $HOME
/data/data/com.termux/files/home

 ~ > echo $PREFIX
/data/data/com.termux/files/usr

 ~ > echo $TMPPREFIX
/data/data/com.termux/files/usr/tmp/zsh

长期使用Linux的朋友可能会发现,这个HOME路径看上去可能不太一样,为了方便,Termux 提供了一个特殊的环境变量:PREFIX

更换国内源

更换Termux清华大学源,加快软件包下载速度。

设置默认编辑器

Bash

export EDITOR=vi

编辑源文件

Bash

apt edit-sources

将原来的https://termux.net官方源替换为http://mirrors.tuna.tsinghua.edu.cn/termux

Bash

# The termux repository mirror from TUNA:
deb https://mirrors.tuna.tsinghua.edu.cn/termux stable main保存并退出

直接编辑源文件

上面是官方推荐的方法,其实还有更简单的方法,类似于Linux下直接去编辑源文件:

Bash

vi  $PREFIX/etc/apt/sources.list

如果清华源出一些问题的话,大家可以尝试先用着官方源:

Bash

# The main termux repository:
deb https://termux.org/packages/ stable main

安装基本工具

Bash

pkg update
pkg install vim curl wget git unzip unrar

访问外置存储优化

执行过上面的zsh一键配置脚本后,并且授予文件访问权限的话,会在家目录生成storage目录,并且生成若干目录,软连接都指向外置存储卡的相应目录

创建QQ文件夹软连接

手机上一般经常使用手机QQ来接收文件,这里为了方便文件传输,直接在storage目录下创建软链接。

QQ

Bash

ln -s /data/data/com.termux/files/home/storage/shared/tencent/QQfile_recv QQ

TIM

Bash

ln -s /data/data/com.termux/files/home/storage/shared/tencent/TIMfile_recv TIM

这样可以直接在

home

目录下去访问QQ文件夹,非常方便文件的传输,大大提升了工作效率。

管理员身份

手机没有root

利用proot工具来模拟某些需要root的环境

Bash

pkg install proot

然后终端下面输入:

termux-chroot

即可模拟root环境
在这个proot环境下面,相当于是进入了home目录,可以很方便地进行一些配置。

在管理员身份下,输入

exit

可回到普通用户身份。

编辑器

终端下有vim神器,并且官方也已经封装了vim-python,对vim进行了Python相关的优化。

Bash

pkg install vim-python

解决termux下的vim汉字乱码

在家目录下,新建.vimrc文件

Bash

vim .vimrc

添加内容如下:

set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1
set enc=utf8
set fencs=utf8,gbk,gb2312,gb18030

然后source下变量:

Bash

source .vimrc

SSH

Termux ssh 连接电脑

有时候要操作电脑,这个时候有了termux,躺在床上就可以操作电脑了,岂不是美滋滋

安装openssh

Bash

pkg install openssh

然后就可以直接ssh连接你的电脑了

前提是电脑安装了ssh服务

Bash

$ ssh sqlsec@192.168.1.8

电脑ssh连接Termux

emmm 这个需求比较鸡肋,但是写文字嘛就得写全了~

安装openssh

同样也需要openssh才可以

pkg install openssh

启动sshd

安装完成后,sshd服务默认没有启动,所以得手动启动下:

sshd

因为手机上面低的端口有安全限制,所以这里的openssh默认的sshd默认的服务是8022端口上的。
ssh的用户名用whoami命令看下。

可以看到

sshd

启动后,端口才可以看到。

PC端生成公钥

ssh登录是key公钥模式登录,首先在PC端生成秘钥:

Bash

sqlsec@ubuntu:-> ssh-keygen -t rsa

执行完成后,会在家目录下创建3个文件
id_rsa, id_rsa.pub , known_hosts

拷贝公钥到手机

然后把公钥id_rsa.pub拷贝到手机的data\data\com.termux\files\home\.ssh文件夹中。

将公钥拷贝到验证文件中

Termux下操作

Bash

cat id_rsa.pub > authorized_keys

PC端连接手机termux

Bash

sqlsec@ubuntu-> ssh -p8022 u0_a119@192.168.1.3

更多用法:

https://www.sqlsec.com/2018/05/termux.html#toc-heading-38