tmux终端工具的简单使用

    Linux上管理和运行进程除了程序级别的守护进程之外,经常用到的有比如nohup &的方式,以及screen会话的方式,而Tmux正是一个非常优秀的终端进程管理的软件,和GNU screen类似,Tmux采用BSD协议,并且支持多控制台以及灵活的切换操作,支持屏幕切分,后台输入命令等,相当于是screen的替代品,相比而言也更加先进,更加合理好用.

    安装方式,在ubuntu下可以使用apt-get的方式安装,比如: sudo apt-get install tmux 即可

    而在CentOS 7.x的系统下可以直接使用yum方式安装: yum install -y tmux 

    另外还可以使用源码的方式编译,地址:http://tmux.github.io,注意:tmux包依赖于libevent,并且有版本要求,使用apt-get或者yum的方式会自动解决依赖.

    下面简要说一下tmux的使用:

    1. 创建新的会话并进入

     tmux new -s abc 这样就创建了名为abc的会话并且进入,进入后可以执行各种任务

    2. 会话后台运行

    当任务执行的时候按下快捷键Ctrl + b激活控制命令,然后按d脱离会话,会话将会在后台运行

    3. 查看已经运行的会话

    执行 tmux ls 可以查看已有的会话

    4. 进入会话

    执行 tmux attach -t abc 可以进入会话,或者简写为 tmux a -t abc 也是可以的

    5. 结束会话以及终端的进程

    执行: tmux kill-session -t abc 可以结束掉abc会话,然后通过查看会话命令可以确认;或者也可以先进入会话然后Ctrl+c结束掉终端进程后执行exit终止会话

    6. 重命名会话名称

     tmux rename -t abc xyz 这样会将会话名称有abc命名为xyz

    上面是最基本的操作,其实tmux最重要的操作都在终端内,所有终端内的控制命令都是在按Ctrl + b后才可以执行,比如后台运行会话使用的是Ctrl + b然后再按d,类似的还有比如下面的:

    显示帮助:Ctrl + b -> ?,按q退出帮助;

    选择下一个窗口:Ctrl + b -> n;

    执行控制命令:Ctrl + b -> : 然后就可以执行支持的命令比如kill-session等,回车执行;

    显示时钟:Ctrl + b -> t,按Enter回到终端;

    选项卡的方式切换多个会话:Ctrl + b -> s会弹出多个选项卡,回车确认切换的会话

    另外还有好多操作,具体都可以通过显示帮助获得.

    最后举一个常用的例子,比如我们要在后台执行1个任务,可以分为下面两步:

tmux new -d -s pytask   # -d 后台创建pytask任务
tmux send -t pytask 'python3 timer.py' ENTER

    第一个可以默认创建1个挂起的任务,第二个向会话发送自定义的指令,注意后面的ENTER表示换行执行,如果不加的话则只输入命令并未执行,具体可以通过 tmux a -t pytask 进入确认即可,当任务执行完成,可以使用上面的kill-session结束终端和会话,整个执行过程也和在后台是一样的.

posted @ 2019-03-18 16:25  小得盈满  阅读(1327)  评论(0编辑  收藏  举报