查看“终端复用器tmux教程”的源代码
←
终端复用器tmux教程
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
[[category:ops]] =* Tmux 是什么= tmux Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权。使用它最直观的好处就是,通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再“浪费”多余的终端来连接这台远程主机。是BSD实现的Screen替代品,相对于Screen,它更加先进:支持屏幕切分,而且具备丰富的命令行参数,使其可以灵活、动态的进行各种布局和操作。 tmux 是一个与 GNU screen 类似的程序,可作为后者的替代品使用。 感觉更加好用 ,screen常常是那个历史什么的不能用 类似的终端复用器还有 GNU Screen。Tmux 与它功能相似,但是更易用,也更强大。 =* 基本用法= ==** install== # Ubuntu 或 Debian $ sudo apt-get install tmux # CentOS 或 Fedora $ sudo yum install tmux # Mac $ brew install tmux ==** 启动与退出== 和screen 一样 键入tmux命令,就进入了 Tmux 窗口 按下Ctrl+d或者显式输入exit命令,就可以退出 Tmux 窗口。 ==** 最常用的日常启动开始 == 启动 tmux 后,在窗口底部有状态行显示,其中包括已创建的窗口列表、当前窗口(使用 * 表示)等。 与 GNU screen 相似,tmux 也使用快捷键来执行相关操作。要创建一个新的窗口,可以按 C-b c,即先按 Ctrl-b,再按 c。在各个窗口间切换可使用下列快捷键: C-b n 切换到下一个窗口 C-b p 切换到上一个窗口 C-b 0、C-b 1……C-b n 切换到第 n 个窗口 分离会话可执行 C-b d 。 通过man tmux可以获得更详尽的 tmux 使用指南。 ==使用 技巧== <pre> #最后一行 是打log 也是为了 把所有的命令执行完成 Nov 2021 sudo -u ap php artisan original_data*clean:cs_im_message 清洗互动客户聊天数据 开始! 清洗互动客户聊天数据 结束! [root@prod-com]# echo 'okdevops'>/tmp/devops.log [root@prod-]# cat /tmp/devops.log okdevops </pre> =* 会话管理= ==* 新建会话== 第一个启动的 Tmux 窗口, 如梭screen 编号是0,第二个窗口的编号是1,以此类推。这些窗口对应的会话,就是 0 号会话、1 号会话。 使用编号区分会话,不太直观,更好的方法是为会话起名 mux new -s <session-name> $ tmux new -s 36 ==** 分离会话== Tmux 窗口中,按下Ctrl+b d或者输入tmux detach命令,就会将当前会话与窗口分离。 ctrl +d b tmux ls命令可以查看当前所有的 Tmux 会话。 ==** 接入会话== <pre> tmux attach命令用于重新接入某个已存在的会话。 # 使用会话编号 $ tmux attach -t 0 # 使用会话名称 $ tmux attach -t <session-name> 我的就是 tmux attach -t 36 兴趣例子 Nov 03 2021 tmux ls 0: 2 windows (created Tue Oct 26 00:21:20 2021) [77x40] (attached) 1: 3 windows (created Tue Nov 2 22:23:31 2021) [103x40] myevan: 3 windows (created Wed Nov 3 10:17:19 2021) [77x1] (attached) tmux attach -t 1 </pre> ==** 会话快捷键== 下面是一些会话相关的快捷键。 Ctrl+b d:分离当前会话。 Ctrl+b s:列出所有会话。 Ctrl+b $:重命名当前会话。 =* 最简操作流程= 综上所述,以下是 Tmux 的最简操作流程。 新建会话tmux new -s my_session。起名 不然下次不好找 在 Tmux 窗口运行所需的程序。 按下快捷键Ctrl+b d将会话分离。 下次使用时,重新连接到会话tmux attach-session -t my_session。 # 重命名会话 tmux rename-session -t abc cba ==trouble== <pre> 错误原因:你已经打开了一个tmux 会话,然后你在这个tmux会话中试图打开另一个tmux会话。 这种嵌套的,一层套一层的,在虚拟会话中声明活着打开另一个虚拟回话,是不好的。 解决方式,直接在命令行打开或者新建 tmux attach-session -t myevan sessions should be nested with care, unset $TMUX to force unset TMUX </pre> =运维操作流程= <pre> 如何在linux终端里创建一个tmux窗口的同时直接在窗口终端里执行命令呢? 这就需要用到tmux send -t session_name "command" ENTER!!!</pre> =杀死会话= <pre> tmux ls # 使用会话编号 $ tmux kill-session -t 0 </pre> [https://www.cnblogs.com/kevingrace/p/6496899.html Linux终端复用神器-Tmux使用梳理] =* 窗格操作= ==** 划分窗格== # 划分上下两个窗格 $ tmux split-window # 划分左右两个窗格 $ tmux split-window -h ==** 5.2 移动光标== tmux select-pane命令用来移动光标位置。 # 光标切换到上方窗格 $ tmux select-pane -U # 光标切换到下方窗格 $ tmux select-pane -D # 光标切换到左边窗格 $ tmux select-pane -L # 光标切换到右边窗格 $ tmux select-pane -R =* see also = [http://www.ruanyifeng.com/blog/2019/10/tmux.html Tmux 使用教程] [https://zh.wikipedia.org/wiki/Tmux 什么是tmux] [http://www.liuxiao.org/2017/12/tmux-%e8%99%9a%e6%8b%9f%e7%bb%88%e7%ab%af%e4%bd%bf%e7%94%a8/ Tmux 虚拟终端使用 ] [http://blog.csdn.net/lihao21/article/details/68958515 Tmux:终端复用利器]
返回至
终端复用器tmux教程
。
导航菜单
个人工具
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
我的导航
关于我
shell
python
ops
linuxchina.net
blog.linuxchina
最近更改
随机页面
帮助
工具
链入页面
相关更改
特殊页面
页面信息