浙江省高等学校教师教育理论培训

微信搜索“教师资格证岗前培训”小程序

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

从 screen 切换到 tmux — LinuxTOY


LinuxTOY 是一个致力于提供 Linux 相关资讯的专题站点。如果您发现了好用好玩的 Linux 东东并愿意发扬自由、分享的精神,可以点击顶部导航 Contact 按钮进行投稿。

    捐助本站
    Subscribe in a reader (original feed)
    Subscribe by Email
    Follow us on Twitter
    Follow us on Identi.ca
    Linuxtoy on G+

    静态文件存储由又拍云存储提供
    Free Online Storage Space
    Linux Books

Popular entries

    Archlinux 安装指南
    Unix/Linux 命令速查表
    高效率编辑器 Vim
    Wget 使用技巧
    玩转 MPlayer
    平铺式窗口管理器 Awesome
    三款 Linux 下的免费桌面级杀毒软件
    窗口管理器 Openbox 入门指南
    最小化安装 Ubuntu
    五个你可能不知道的 Linux 桌面环境
    7 个致命的 Linux 命令
    很轻很强大:轻量级桌面环境比较
    GNOME Shell 介绍
    终极 Shell——Zsh
    6 款高品质的免费 Linux CAD 应用程序
    25+ 个值得跟随的 Linux 相关 Twitter 帐号
    Linux 下的三款 Flash 独立播放器
    Linux 下的几个游戏模拟器
    平铺式窗口管理器 Musca 初体验
    History(历史)命令用法 15 例
    Fluxbox 配置
    bash 使用技巧
    10 本 O'Reilly 出版的免费好书

从 screen 切换到 tmux

2011-04-15 Toy Posted in TipsRSS

在我的 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 的窗口

复制与粘贴操作

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

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

参考

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

Read More:

    » tmux:GNU screen 替代品
    » tmux 1.7 发布
    » 脚本化 tmux
    » tmux 1.4 发布
    » Screen:Shell 孵化器
    » Split Screen: Google Chrome 的分屏扩展
    » Adobe宣布Open Screen Project,开放部分Flash规格
    » 24 个很酷的 Linux/Unix 工具
posted on 2013-01-07 23:29  lexus  阅读(706)  评论(0编辑  收藏  举报