Linux 会话管理工具
Linux 会话管理工具
Zellij
安装
先在 Zellij 下载好压缩包, 然后传到 Linux 文件系统中
位置选定在自己想要安装 zellij 位置
解压:
tar -xvf zellij-x86_64-unknown-linux-musl.tar.gz
添加执行权限:
chmod +x zellij
运行 zellij
:
./zellij
将 zellij
所在目录添加到 PATH
变量中以在任何地方使用 zellij
:
打开 /root/.bashrc
在末尾加上如下内容:
export PATH="/home/ubuntu/zellij:$PATH"
若已经有了其他的环境变量, 请使用
:
将此条拼接在前面
然后:
source ~/.bashrc
然后就可以在任意位置使用 zellij
命令来启用 zellij
了
使用
新建一个session
zellij
新建一个 Tab
: ctrl + t, n
重命名 Tab
: ctrl + t, r
新建一个 pane
: ctrl + p, n
重命名 pane
: Ctrl + p, c
detach session: ctrl + o, d
关闭 session: Ctrl + q
界面底部有提示, 很友好:
显示 session 列表: zellij list-sessions
或者 zellij ls
返回某个 session: zellij attach xxx
或者 zellij a xxx
Screen 命令
Linux screen 命令用于多重视窗管理程序。
screen 为多重视窗管理程序。此处所谓的视窗,是指一个全屏幕的文字模式画面。通常只有在使用 telnet 登入主机或是使用老式的终端机时,才有可能用到 screen 程序。
语法
screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s <shell>][-S <作业名称>]
参数说明:
-A
将所有的视窗都调整为目前终端机的大小。-d<作业名称>
将指定的 screen 作业离线。-h<行数>
指定视窗的缓冲区行数。-m
即使目前已在作业中的 screen 作业,仍强制建立新的 screen 作业。-r<作业名称>
: 恢复离线的 screen 作业。-R
先试图恢复离线的作业。若找不到离线的作业,即建立新的 screen 作业。-s<shell> <视窗名>
:指定建立新视窗时,所要执行的 shell。-S<作业名称>
:指定 screen 作业的名称。-v
显示版本信息。-x
恢复之前离线的 screen 作业。-ls或--list
显示目前所有的 screen 作业。-wipe
检查目前所有的 screen 作业,并删除已经无法使用的 screen 作业。
在 screen 终端 下 按下 Ctrl+a d
键 可以离开 screen 作业
tmux
基本用法
# 安装tmux
# Ubuntu 或 Debian
$ sudo apt-get install tmux
# 进入 tmux 窗口
$ tmux
# 退出 tmux 窗口
Ctrl+D 或者 exit
# tmux 快捷键
# 先按下 Ctrl+B 然后按下其他键触发,例如获取帮助信息:
$ Ctrl+B ?
常用流程
# 新建会话
tmux new -s [会话名称]
# 运行想要运行的程序/命令
# 分离会话
Ctrl+B D
# 后续需要使用此会话再重新连接上来(下面命令中的 attach-session 可以简化为 a)
tmux attach-session -t [会话名称]
会话管理
新建会话
第一个启动的 tmux 窗口编号是 0
, 第二个是 1
编号可能不太直观, 可以类似 screen -S [窗口名]
一样为会话取名:
tmux new -s [session-name]
分离会话
在 tmux 窗口中按下Ctrl+B D
或者输入tmux detach
命令,就会将当前会话与窗口分离。
$ tmux detach
上面命令执行后,就会退出当前 Tmux 窗口,但是会话和里面的进程仍然在后台运行。
tmux ls
命令可以查看当前所有的 Tmux 会话。
$ tmux ls
# or
$ tmux list-session
接入会话
# 使用编号接入会话
tmux attach -t 0
# 使用会话名称接入会话
tmux attach -t [session-name]
kill会话
tmux kill-session -t [会话编号]
# or
tmux kill-session -t [session-name]
切换会话
tmux switch -t [会话编号]
# or
tmux switch -t [会话名称]
重命名会话
tmux rename-session -t [旧会话名/编号] [新会话名/编号]