快速上手

大约需要 5 分钟。你需要一台可以登录的 SSH 服务器。

1. 添加主机

在终端标签页点 ☰ 打开连接,再点远程终端 · 添加新的 SSH 主机,然后填写:

2. 选择登录方式

在身份验证中选择一种。无论选择哪种,都会用 Android Keystore 密钥加密保存到钥匙串中,其他主机也可以重复使用。

3. 首次连接时确认服务器密钥

首次连接时会显示服务器密钥的指纹。点按信任之前,请与服务器上查到的指纹进行核对:

ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub

之后每次连接都会校验密钥。如果密钥发生变化,Termexa 会停止连接并提醒你。

4. 用 tmux 或 Herdr 保持会话

手机上的连接经常断开。在服务器上使用多路复用器,程序和代理会继续运行,Termexa 会重新连接到同一会话。添加主机时把它填入要运行的命令,或连接后手动输入:

tmux new -A -s main      # 连接到 "main",不存在则新建
herdr --session main     # Herdr 同理

先把导航键加入快捷键面板(在设置 → 快捷键面板中点按一个格子,从插件标签页选择)。点按它会列出会话、窗口和窗格,点按即可直接跳转。

在 ~/.tmux.conf 中加入 set -g set-clipboard on,tmux 中复制的文本就会进入手机剪贴板。每台主机首次会询问一次,之后可在编辑主机的服务器复制到剪贴板中更改。

5. 定制工具栏

6. 文件

点按终端顶部的文件夹按钮,即可打开同一主机的 SFTP 文件窗口:浏览、上传下载、重命名、修改权限、编辑文本文件。关闭窗口后传输仍会继续直到完成,底栏的传输列表按钮可查看所有主机的进度和记录。长按选中项目后,可用选择栏的 ⋮ 按钮直接在服务器上解压或压缩归档;点按路径栏的星标即可将文件夹加入书签。

7. 命令结束时收到通知

启用 Shell 集成后,运行 10 秒以上的命令结束时,即使你在看别的画面也会收到通知(请在设置中打开终端提醒)。fish 4 及以上版本已支持。zsh 请把以下内容加到 ~/.zshrc 末尾:

# Termexa shell integration (OSC 133)
_termexa_osc() { if [ -n "$TMUX" ]; then printf '\ePtmux;\e\e]133;%s\a\e\\' "$1"; else printf '\e]133;%s\a' "$1"; fi; }
_termexa_precmd() { local s=$?; _termexa_osc "D;$s"; _termexa_osc A; return $s; }
_termexa_preexec() { _termexa_osc C; }
precmd_functions=(_termexa_precmd $precmd_functions)
preexec_functions+=(_termexa_preexec)

bash 请加到 ~/.bashrc 末尾:

# Termexa shell integration (OSC 133)
_termexa_osc() { if [ -n "$TMUX" ]; then printf '\ePtmux;\e\e]133;%s\a\e\\' "$1"; else printf '\e]133;%s\a' "$1"; fi; }
_termexa_prompt() { local s=$?; _termexa_osc "D;$s"; _termexa_osc A; return $s; }
PROMPT_COMMAND="_termexa_prompt${PROMPT_COMMAND:+;$PROMPT_COMMAND}"
PS0='$(_termexa_osc C)'"$PS0"

在 tmux 中使用时,还需在 ~/.tmux.conf 中加入 set -g allow-passthrough on。这样在 tmux 中也能收到通知。

无法连接时