海运的博客

Tmux自动恢复或打开新窗口

发布时间:May 14, 2014 // 分类:Tmux // No Comments

方法1:

if [ "$TERM" != "screen" ]; then
    WHOAMI=$(whoami)
    if tmux has-session -t $WHOAMI 2>/dev/null; then
        tmux -2 attach-session -t $WHOAMI
    else
        tmux -2 new-session -s $WHOAMI
        exit
    fi
fi

方法2:

if [ `which tmux 2> /dev/null` -a -z "$TMUX" ]; then
        tmux -2 attach || tmux -2 new; exit
fi

20220315更新:

[ -f /usr/bin/tmux ] && [ -z "$TMUX"  ] && { tmux attach || tmux new-session;}

参考:
http://bionicraptor.ca/2011/07/24/automatically-start-tmux/
https://coderwall.com/p/tgm2la

Tmux多窗口分隔线显示虚线不正常解决

发布时间:September 15, 2012 // 分类:Tmux // No Comments

使用Tmux在UTF-8编码下窗口分隔线会显示为虚线,如下:
tmux分隔线虚线.png
解决方法,SSH客户端字体选项处取消Treat CJK ambiguous characters as wide支持,Xshell下设置如下:
xshell下tmux分隔线不正常解决.png
重新登录SSH终端,现tmux分隔多窗口效果如下:
tmux分隔线显示不正常解决.png

Centos安装使用配置tmux

发布时间:August 22, 2012 // 分类:Tmux // No Comments

CentOS安装支持组件:

yum install libevent-devel ncurses-devel

安装tmux

wget http://downloads.sourceforge.net/tmux/tmux-1.6.tar.gz
tar zxvf tmux-1.6.tar.gz 
cd tmux-1.6
./configure
make
make install

启动新会话:

tmux [new -s 会话名 -n 窗口名]

启动新会话时执行命令:

#-d 后台启动
#exec bash 当ping结束时启动bash,不然会退出tmux窗口
tmux new -s test -d "ping qq.com; bash"  

指定会话启动新窗口:

tmux [neww -t 会话名 -n 窗口名]

恢复会话:

tmux at [-t 会话名]

列出所有会话:

tmux ls

关闭会话:

tmux kill-session -t 会话名

在 Tmux 中,按下 Tmux 前缀 ctrl+b,然后:
会话

:new<回车>  启动新会话
s           列出所有会话
$           重命名当前会话

贴上我的tmux配置文件:

#https://www.haiyun.me
bind a send-prefix
bind m command-prompt "splitw -h 'exec %%'"
bind S command-prompt "neww -n %1 'ssh %1'"
bind r source-file ~/.tmux.conf \; display-message "Config reloaded..."
bind k selectp -U 
bind j selectp -D
bind h selectp -L
bind l selectp -R
bind K resizep -U 10 
bind J resizep -D 10
bind H resizep -L 10
bind L resizep -R 10
bind ^i kill-session
bind ^l last-window
set -g prefix C-a
set -g base-index 1
setw -g pane-base-index 1
set -g display-time 5000
set -g repeat-time 1000 
set -g status-right '"#(hostname)" #(date -d "today" +"%Y/%m/%d-%H:%M")#(uptime |cut -d ',' -f 2-)'
set -g status-interval 10
set -g status-right-length 100
set -g status-utf8 on 
set -g status-keys vi 

setw -g mode-mouse on
set -g mouse-select-pane on
set -g mouse-select-window on
set -g mouse-resize-pane on
set -g mode-mouse on
set -g mouse-utf8 on
setw -g mode-keys vi
setw -g utf8 on
#setw -g window-status-current-bg red
分类
最新文章
最近回复
  • 杰迪武士: 此文甚好甚强巨,依照此文在树莓派2 + Rasbian上部署成功 感谢博主美文共赏
  • 海运: ups不知有没选项可设置此参数,不过你可以在另外一台电脑上安装nut客户端自动关机。
  • kgami: 想请教一下,设置了的电脑自动关机之后,几秒后UPS怎么也跟着关机了,导致另外一台电脑没关机就断...
  • 海运: 写的很详细了啊,/etc/nut/hosts.conf用以nut-cgi连接nut服务器参数,...
  • ryan: 请问下nginx配置好了,怎么和这个nut链接呢?最后可视化管理这块能给个详细一点的教程么?谢谢。
  • 1: /etc/config/fstab配置文件 https://openwrt.org/zh/do...
  • 听雨看雪: 找了好久,终于找到UP主,给出的正确解决方案,太感谢了,困扰大半年的问题,重装了N道PVE系统...
  • zr: 大佬,这个bash-completion是从哪个源搞到的
  • 姚生: 要要下载
  • 阿东: 我在编译树莓派的时候也遇到同样的问题,后来发现是make menuconfig 的时候忘了带环...