putty在用秘钥连接ssh的时候总是有诸多不便,最终还是选择了gitbash

gitbash优势:
- 首先, gitbash同mac的terminal一样自带ssh
- 其次它支持linux命令,eg
cdlspwdcpmv.etc, 支持vim,操作起来比较方便 - 此外,它还可以设置alias(sublime goland vscode可以从终端启动了), 配置文件
/etc/profile.d/aliases.sh, 需要管理员权限打开
putty在用秘钥连接ssh的时候总是有诸多不便,最终还是选择了gitbash

gitbash优势:
cd ls pwd cp mv .etc, 支持vim,操作起来比较方便/etc/profile.d/aliases.sh, 需要管理员权限打开众所周知,git bash下是不能实现多标签页的,每次使用git bash的ssh连接多台机器时,需要打开多个git bash程序。而tmux能解决这个问题,并且tmux比这个还要强大。
tmux就相当于linux的screen

tmux是一个终端复用器(terminal mutilplexer)。何谓终端复用器呢?平时我们的使用git bash终端通过ssh连接到远程之后,会话就开始了,当关闭终端时,会话就结束,远程正在执行的任务也会结束,即会话和终端窗口是绑定在一起的。tmux就是为了解决这个问题,让窗口和会话解绑。
git bash中执行以下命令,即可安装tmux。如果以下操作完tmux没法使用,注意git升级到最新版,我遇到的坑就是git2.9版本安装完tmux后打tmux命令没反应。升级完git2.26后即可。
git clone https://github.com/xnng/bash.git
cd bash
cp tmux/bin/* /usr/bin
cp tmux/share/* /usr/share -r
新建tmux配置文件
vi ~/.tmux.conf
原因复制如下配置到上面的配置文件中即可。
setw -g mouse
set-option -g history-limit 20000
set-option -g mouse on
bind -n WheelUpPane select-pane -t= \; copy-mode -e \; send-keys -M
bind -n WheelDownPane select-pane -t= \; send-keys -M
tmux new -s work 这时打开了一个tmux会话,窗口底部是一个绿色的信息显示条tmux detach命令,分离窗口和会话,这是你会退出tmux会话,回到git bash终端tmux ls,你会看到自己后台正在跑的tmux会话,这时即使你关闭git bash终端,会话也不会关闭,此时可以输入tmux new -s mytest新建一个新会话,相当于开了两个窗口了。tmux switch -t mytest可以切换到mytest会话tmux kill-session -t SESSION_NAMEctrl + b d(注意:此命令是ctrl和b同时按下,然后全部松开,再单独按下d)ctrl + b ctrl + z (注意:此命令是先同时按下ctrl和b, 然后都松开,再同时按下ctrl和z)tmux a -t SESSION_NAME以上,还有许多的快捷键可以使用,如,在tmux会话中,按ctrl+b一下,再按以下w键,会弹出所有窗口的列表,此时你选择一个窗口即可,切换非常方便。
tmux的层次划分为:一个session下有多个window,一个window下有多个pane(面板)
tmux new -s {sessionName},直接输入tmux也可新建一个自动命名的sessiontmux new-window -n {windowName}tmux split-window(划分上下两个窗格),tmux split-window -h(划分左右两个窗格)C-b w表示先按一次ctrl-b,再按一次w按住shift选择内容后按右键选复制,记住是按住shift键。粘贴时可以按住shift键点击右键,再选择粘贴。
tmux的快捷键都有前缀键,默认为ctrl+b,记为C-b,需先按前缀键再按指定的键,如C-b w打开window列表,表示按前缀键后按w,依此类推。一般的操作流程和快捷键如下:
C-b ?tmux new -s {sessionName}C-b dC-b c,或命名tmux new-window -n {windowName}C-b wC-b &C-b %
关闭窗格:C-b x