从 screen 切换到 tmux

标签: Tips tmux | 发表时间:2011-04-15 21:26 | 作者:Toy iworm
出处:http://linuxtoy.org


在我的 Linux 生活中,我曾做过几次重要的切换。我先是从 Archlinux 切换到 Gentoo,后来又从 bash 切换到了 zsh。现在,我又从 screen 切换到 tmux。对于各个终端控来说,screen 是几乎每天都会使用的好工具,抛开确实不易。但有了更加好用的 tmux,我为什么不切换?

Tmux thumb

我为什么要从 screen 切换到 tmux

对我来说,从 screen 切换到 tmux 不是平白无故的,自然有其充分的理由。我感觉使用 tmux 更加方便、灵活和高效。我非常喜欢 tmux 的这些方面:

  • 垂直分割窗口,当然水平也是可以的
  • vi 或 emacs 按键绑定模式
  • 有多个粘贴缓冲,可完全由按键进行选取、复制、以及粘贴操作
  • 配置很容易,尤其是状态行
  • 脚本化,通过脚本可以方便的控制 tmux 会话
  • 有预设布局,可搜索窗口,自动命名窗口名称
  • 文档清晰、详尽

更改默认按键前缀

从 screen 切换到 tmux 十分平滑,tmux 的按键设置与 screen 大都相同,只是其默认按键前缀为 Ctrl-b。为了延续在 screen 中的使用习惯,我将其更改为 Ctrl-a。将下列内容加到 $HOME/.tmux.conf 中即可:

set -g prefix ^a
unbind ^b
bind a send-prefix

按键绑定

我还在 .tmux.conf 中定义了以下按键绑定:

  • 水平或垂直分割窗口

    unbind '"'
    bind - splitw -v # 分割成上下两个窗口
    unbind %
    bind | splitw -h # 分割成左右两个窗口
    
  • 选择分割的窗格

    bind k selectp -U # 选择上窗格
    bind j selectp -D # 选择下窗格
    bind h selectp -L # 选择左窗格
    bind l selectp -R # 选择右窗格
    
  • 重新调整窗格的大小

    bind ^k resizep -U 10 # 跟选择窗格的设置相同,只是多加 Ctrl(Ctrl-k)
    bind ^j resizep -D 10 # 同上
    bind ^h resizep -L 10 # ...
    bind ^l resizep -R 10 # ...
    
  • 交换两个窗格

    bind ^u swapp -U # 与上窗格交换 Ctrl-u
    bind ^d swapp -D # 与下窗格交换 Ctrl-d
    
  • 执行命令,比如看 Manpage、查 Perl 函数

    bind m command-prompt "splitw -h 'exec man %%'"
    bind @ command-prompt "splitw -h 'exec perldoc -f %%'"
    

定制状态行

状态行左边默认就很好了,我对右边定制了一下,显示 uptime 和 loadavg:

set -g status-right "#[fg=green]#(uptime.pl)#[default] • #[fg=green]#(cut -d ' ' -f 1-3 /proc/loadavg)#[default]"

下面两行设置状态行的背景和前景色:

set -g status-bg black
set -g status-fg yellow

默认启动应用

当 tmux 启动时,可以默认启动一些应用:

new -s work mutt # 新建名为 work 的会话,并启动 mutt
neww rtorrent # 启动 rtorrent
neww vim # 启动 vim
neww zsh
selectw -t 3 # 默认选择标号为 3 的窗口

复制与粘贴操作

  1. 按 C-a [ 进入复制模式,如果有设置 setw -g mode-keys vi 的话,可按 vi 的按键模式操作。移动至待复制的文本处,按一下空格,结合 vi 移动命令开始选择,选好后按回车确认。

  2. 按 C-a ] 粘贴已复制的内容。

参考

tmux 的官方主页: http://tmux.sourceforge.net 我的 .tmux.conf

分类: Tips | 永久链接 | 收藏到 del.icio.us | Email 给好友 | 81 评论 | 捐助本站

相关 [screen 切换 tmux] 推荐:

从 screen 切换到 tmux

- iworm - LinuxTOY
在我的 Linux 生活中,我曾做过几次重要的切换. 我先是从 Archlinux 切换到 Gentoo,后来又从 bash 切换到了 zsh. 现在,我又从 screen 切换到 tmux. 对于各个终端控来说,screen 是几乎每天都会使用的好工具,抛开确实不易. 但有了更加好用的 tmux,我为什么不切换.

進化版 screen - 踢馬克斯 tmux

- kylexlau - 這樣做就對了!
一、screen 使用上的問題. 開始使用 Linux 開發後,screen 就一直是不可或缺的工具. 可幫我隨時隨地回復先前的工作階段,但總有幾個小問題存在:. 不正常斷線後無法 re-attach. 在公司的 CentOS,若因各種原因不正常斷線,要再回復連線經常會被卡住. 家裡的 Debian 比較少發生這種狀況、使用 tcsh 的同事(我用 zsh)也沒碰到.

改变终端下的光标颜色,包括 screen 和 tmux!

- Wolf - 依云's Blog
曾经在Ubuntu中文论坛里看到一个改变光标颜色的方法,用光标颜色来指示是在 Vim 的普通模式还是插入模式下(因为 gnome-terminal 不支持使用转义序列改变光标形状). Vim Wiki 上的 tip. 可惜它不适用于当时我正在使用的 screen. 现在我改用 tmux 了,偶然改变TERM变量测试的时候,发现光标颜色竟然改变了——虽然还附带一些“不良反应”.

oCam(Screen Recorder) – 简单的屏幕录制工具

- - 小众软件
oCam(Screen Recorder) 是一款简单的屏幕录制工具,界面直观,还可以录制声音、截图. 如上图,被框起来的部分就是 录屏范围, oCam 内置了常用尺寸窗口大小,也可以手动调整大小. 支持 AVI、MP4、MOV、FLV 等格式. 还可以设置每次录制视频的时间限制,比如限制每段视频录制2分钟后自动停止.

javascript图片切换

- Haipeng - 博客园-首页原创精华区
闲来无事,练习js,参照网上的一些源码写了一个图片切换程序,刚来博客园,不懂怎么发布js程序,懂的朋友可以留言告之. 1.图片切换效果有以下几种:随机切换   4格纵向百叶窗  16格横向百叶窗  由里至外逐渐放大   中间向左右两边逐渐放大   中间向上下两边逐渐放大   由上至下落幕   由左至右   由左上至右下   由右下至左上              8格纵向百叶窗    8格纵向百叶窗2   8格万花筒  24格万花筒  4格滑行左上至右下  4格滑行左上至右下  4格滑行落幕   4格滑行延伸.

Public DNS Tool-DNS切换工具

- - 无名小卒
Public DNS Tool v9.1下载: dbank| kuaipan| 官方. 无名小卒(Digital Fingerprint: b98c67913fef00419d415179421ab42f) Related Posts. Webluker-免费CDN、DNS解析和网站监控服务.

redis+Keepalived主从热备秒级切换

- - 开源软件 - ITeye博客
安装使用centos 5.10 . 编译环境 yum -y install gcc gcc+ gcc-c++ openssl openssl-devel pcre pcre-devel. 当 Master 与 Slave 均运作正常时, Master负责服务,Slave负责Standby;. 当 Master 挂掉,Slave 正常时, Slave接管服务,同时关闭主从复制功能;.

spring数据源动态切换

- - 企业架构 - ITeye博客
     原文->http://exceptioneye.iteye.com/blog/1698064.       在Spring 2.0.1中引入了AbstractRoutingDataSource, 该类充当了DataSource的路由中介, 能有在运行时, 根据某种key值来动态切换到真正的DataSource上.

Gmail推出可切换的多种收件箱模式

- 小明 - 互联网的那点事
据国外媒体报道,Google日前对Gmail收件箱的功能和用户界面进行了升级,可以支持以标签切换多种收件箱模式. 此前,Gmail的收件箱只有一种模式,即按照时间先后顺序列出收到的所有电子邮件. 在新版中,上述模式被称为“经典模式”. 除此之外,Google还增加了若干种界面模式. “重要顺序”,即按照信件是否重要依次列出,用户可以自行设置通信的重要级别.

SwitchyPlus 发布,全平台原生API支持代理切换

- KP - Chrome迷
感谢读者 xxy171070 的分享. SwitchyPlus 是一款基于 Chrome 原生的实验性代理 API 开发的代理切换扩展,主要功能和 Chrome 平台上大名鼎鼎的代理切换插件 Proxy Switchy. 基本上一样,不过由于采用的是 Chrome 原生的 Proxy API,所以可以完美在各种平台上实现,不受系统代理调用的限制.