终端复用tmux配置及使用

  • 2020-01-02
  • 177
  • 0

1. 安装

apt update
apt install tmux

2. 配置

这里使用 github 中一个使用人数非常多的配置:repo: gpakosz/.tmux,下面是他的配置的使用方法。

cd ~
git clone https://github.com/gpakosz/.tmux.git
ln -s -f .tmux/.tmux.conf
cp .tmux/.tmux.conf.local .

3. 命令及快捷键

参考自:github gist: ryerh/tmux-cheatsheet.markdown,下面是节选的一部分常用的命令和快捷键。

终端中常用命令:

tmux [new -s $sess_name]  # 启动新会话, 并可以命令
tmux at [-t $sess_name]  # 恢复会话最后一个会话, 也可以指定会话名
tmux ls  # 会话列表
tmux kill-session -t $sess_name  # 关闭某会话

tmux 会话中常用快捷键,需要先按下 C-b (ctrl + b)。如果使用第二步的配置文件,则也可以使用 C-a (ctrl + a),推荐 C-a 因为这两个键距离很近,更容易按。

d  # 后台当前会话并返回到原bash
c  # 创建新窗口
w  # 列出所有窗口
p/n  # 切换到前/后一个窗口
&  # 关闭当前窗口
:  # 命令提示符

tmux 会话中使用鼠标滚动:

  1. 按快捷键: “C-b“;
  2. 输入: “:set -g mouse on“,这样就可以鼠标滚动窗口了,也可以将加入到配置文件中使鼠标每次都可用;
  3. 当需要鼠标左右键选择时按下 shift 来固定视图。

4. 自启动

打开终端时自动进入 tmux。

如果安装了 zsh 以及配置了 ohmyzsh(我记录的过程 zsh安装及配置),可以直接引入 ohmyzsh plugin 即可,关于此插件的官方说明: ohmyzsh/plugins/tmux。这里贴出配置自启动的方法:

#vim ~/.zshrc
# 1. 在 zshrc 中添加 `tmux` 到 plugins 字段中
plugins=(... tmux)

# 2. 默认设置 ZSH_TMUX_AUTOSTART == false, 关闭了新终端中自启动,设置为 true 启用自启动。
vim ~/.oh-my-zsh/plugins/tmux/tmux.plugin.zsh
# 此文件中修改 ZSH_TMUX_AUTOSTART:=false 为 true
ZSH_TMUX_AUTOSTART:=true

# 3. source
source ~/.zshrc

如果未安装 zsh 或者ohmyzsh,那可以把 ohmyzsh/plugins/zsh 中相关实现代码复制出来放到自己的 zshrc 中。实现自启动的代码在 ohmyzsh/plugins/tmux/tmux.plugin.zsh 的 92-end(需要去掉部分无关设置)。

5. 脚本启动某程序

使用脚本在 tmux 启动某个程序时建议使用 send-keys 将命令发送到 bash 里。

下面是启动 frpServer 的脚本。

touch frps
chmod +x frps
vim frps

根据自己的服务修改 sess_nametmux send-keys -t 后的内容,写入以下内容:

#!/bin/bash
# frp - start frpServer in tmux

sess_name="frpServer"

export DISABLE_AUTO_TITLE="true"

tmux has-session -t $sess_name
if [ $? = 0 ];then
    echo $sess_name "already exist. attaching..."
    tmux attach-session -t $sess_name
    # exit
else
    echo $sess_name "doesn't exist. creating..."
    tmux new -d -s $sess_name -n home
    tmux send-keys -t $sess_name:1 "cd frp_0.30.0_linux_amd64" Enter
    tmux send-keys -t $sess_name:1 "./frps -c ./frps.ini" Enter
fi

版权声明: 本网站所有资源采用BY-NC-SA 4.0协议进行授权,转载应当以相同方式注明文章来自:终端复用tmux配置及使用 - 一方的天地

评论

还没有任何评论,你来说两句吧

发表评论

陕ICP备18010914号
知识共享许可协议
本作品由一方天地采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可,转载或引用本站文章应遵循相同协议。如果有侵犯版权的资源请尽快联系站长,本站会在24h内删除有争议的资源。 -