UNPKG

6.8 kBMarkdownView Raw
1tmux
2===
3
4Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权
5
6## 补充说明
7
8使用它最直观的好处就是,通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再“浪费”多余的终端来连接这台远程主机;
9
10## 功能
11
12- 提供了强劲的、易于使用的命令行界面。
13- 可横向和纵向分割窗口。
14- 窗格可以自由移动和调整大小,或直接利用四个预设布局之一。
15- 支持 UTF-8 编码及 256 色终端。
16- 可在多个缓冲区进行复制和粘贴。
17- 可通过交互式菜单来选择窗口、会话及客户端。
18- 支持跨窗口搜索。
19- 支持自动及手动锁定窗口。
20
21## 安装
22
23```shell
24# 在 Mac OS 中,通过 brew 安装
25brew install tmux
26# ubuntu版本下直接apt-get安装
27sudo apt-get install tmux
28# centos7版本下直接yum安装
29yum install -y tmux
30
31# centos6版本需要编译安装
32yum install libevent libevent-devel ncurses-devel
33tar -zvxf tmux-2.3.tar.gz # (提前下载:wget https://github.com/tmux/tmux/releases/download/2.3/tmux-2.3.tar.gz)
34cd tmux-2.3
35./configure
36make && make install
37```
38
39## 快捷键使用说明
40
41<table class="table-view log-set-param">
42<tbody>
43<tr>
44<td colspan="2" align="left" valign="center" width="0">
45 <div>Ctrl+b</div>
46</td>
47<td>
48 <div>激活控制台;此时以下按键生效</div>
49</td>
50</tr>
51<tr>
52<td rowspan="9" align="left" valign="center" width="0">
53 <div>系统操作</div>
54</td>
55<td>
56 <div>?</div>
57</td>
58<td>
59 <div>列出所有快捷键;按q返回</div>
60</td>
61</tr>
62<tr>
63<td>
64 <div>d</div>
65</td>
66<td>
67 <div>脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话</div>
68</td>
69</tr>
70<tr>
71<td>
72 <div>D</div>
73</td>
74<td>
75 <div>选择要脱离的会话;在同时开启了多个会话时使用</div>
76</td>
77</tr>
78<tr>
79<td>
80 <div>Ctrl+z</div>
81</td>
82<td>
83 <div>挂起当前会话</div>
84</td>
85</tr>
86<tr>
87<td>
88 <div>r</div>
89</td>
90<td>
91 <div>强制重绘未脱离的会话</div>
92</td>
93</tr>
94<tr>
95<td>
96 <div>s</div>
97</td>
98<td>
99 <div>选择并切换会话;在同时开启了多个会话时使用</div>
100</td>
101</tr>
102<tr>
103<td>
104 <div>:</div>
105</td>
106<td>
107 <div>进入命令行模式;此时可以输入支持的命令,例如kill-server可以关闭服务器</div>
108</td>
109</tr>
110<tr>
111<td>
112 <div>[</div>
113</td>
114<td>
115 <div>进入复制模式;此时的操作与vi/emacs相同,按q/Esc退出</div>
116</td>
117</tr>
118<tr>
119<td>
120 <div>~</div>
121</td>
122<td>
123 <div>列出提示信息缓存;其中包含了之前tmux返回的各种提示信息</div>
124</td>
125</tr>
126<tr>
127<td rowspan="10" align="left" valign="center" width="0">
128 <div>窗口操作</div>
129</td>
130<td>
131 <div>c</div>
132</td>
133<td>
134 <div>创建新窗口</div>
135</td>
136</tr>
137<tr>
138<td>
139 <div>&amp;</div>
140</td>
141<td>
142 <div>关闭当前窗口</div>
143</td>
144</tr>
145<tr>
146<td>
147 <div>数字键</div>
148</td>
149<td>
150 <div>切换至指定窗口</div>
151</td>
152</tr>
153<tr>
154<td>
155 <div>p</div>
156</td>
157<td>
158 <div>切换至上一窗口</div>
159</td>
160</tr>
161<tr>
162<td>
163 <div>n</div>
164</td>
165<td>
166 <div>切换至下一窗口</div>
167</td>
168</tr>
169<tr>
170<td>
171 <div>l</div>
172</td>
173<td>
174 <div>在前后两个窗口间互相切换</div>
175</td>
176</tr>
177<tr>
178<td>
179 <div>w</div>
180</td>
181<td>
182 <div>通过窗口列表切换窗口</div>
183</td>
184</tr>
185<tr>
186<td>
187 <div>,</div>
188</td>
189<td>
190 <div>重命名当前窗口;这样便于识别</div>
191</td>
192</tr>
193<tr>
194<td>
195 <div>.</div>
196</td>
197<td>
198 <div>修改当前窗口编号;相当于窗口重新排序</div>
199</td>
200</tr>
201<tr>
202<td>
203 <div>f</div>
204</td>
205<td>
206 <div>在所有窗口中查找指定文本</div>
207</td>
208</tr>
209<tr>
210<td rowspan="14" align="left" valign="center" width="0">
211 <div>面板操作</div>
212</td>
213<td>
214 <div></div>
215</td>
216<td>
217 <div>将当前面板平分为上下两块</div>
218</td>
219</tr>
220<tr>
221<td>
222 <div>%</div>
223</td>
224<td>
225 <div>将当前面板平分为左右两块</div>
226</td>
227</tr>
228<tr>
229<td>
230 <div>x</div>
231</td>
232<td>
233 <div>关闭当前面板</div>
234</td>
235</tr>
236<tr>
237<td>
238 <div>!</div>
239</td>
240<td>
241 <div>将当前面板置于新窗口;即新建一个窗口,其中仅包含当前面板</div>
242</td>
243</tr>
244<tr>
245<td>
246 <div>Ctrl+方向键</div>
247</td>
248<td>
249 <div>以1个单元格为单位移动边缘以调整当前面板大小</div>
250</td>
251</tr>
252<tr>
253<td>
254 <div>Alt+方向键</div>
255</td>
256<td>
257 <div>以5个单元格为单位移动边缘以调整当前面板大小</div>
258</td>
259</tr>
260<tr>
261<td>
262 <div>Space</div>
263</td>
264<td>
265 <div>在预置的面板布局中循环切换;依次包括even-horizontal、even-vertical、main-horizontal、main-vertical、tiled</div>
266</td>
267</tr>
268<tr>
269<td>
270 <div>q</div>
271</td>
272<td>
273 <div>显示面板编号</div>
274</td>
275</tr>
276<tr>
277<td>
278 <div>o</div>
279</td>
280<td>
281 <div>在当前窗口中选择下一面板</div>
282</td>
283</tr>
284<tr>
285<td>
286 <div>方向键</div>
287</td>
288<td>
289 <div>移动光标以选择面板</div>
290</td>
291</tr>
292<tr>
293<td>
294 <div>{</div>
295</td>
296<td>
297 <div>向前置换当前面板</div>
298</td>
299</tr>
300<tr>
301<td>
302 <div>}</div>
303</td>
304<td>
305 <div>向后置换当前面板</div>
306</td>
307</tr>
308<tr>
309<td>
310 <div>Alt+o</div>
311</td>
312<td>
313 <div>逆时针旋转当前窗口的面板</div>
314</td>
315</tr>
316<tr>
317<td>
318 <div>Ctrl+o</div>
319</td>
320<td>
321 <div>顺时针旋转当前窗口的面板</div>
322</td>
323</tr>
324</tbody>
325</table>
326
3271)进入tmux面板后,一定要先按ctrl+b,然后松开,再按其他的组合键才生效。
3282)常用到的几个组合键:
329
330```shell
331ctrl+b ? # 显示快捷键帮助
332ctrl+b 空格键 # 采用下一个内置布局,这个很有意思,在多屏时,用这个就会将多有屏幕竖着展示
333ctrl+b ! # 把当前窗口变为新窗口
334ctrl+b " # 模向分隔窗口
335ctrl+b % # 纵向分隔窗口
336ctrl+b q # 显示分隔窗口的编号
337ctrl+b o # 跳到下一个分隔窗口。多屏之间的切换
338ctrl+b 上下键 # 上一个及下一个分隔窗口
339ctrl+b C-方向键 # 调整分隔窗口大小
340ctrl+b & # 确认后退出当前tmux
341ctrl+b [ # 复制模式,即将当前屏幕移到上一个的位置上,其他所有窗口都向前移动一个。
342ctrl+b c # 创建新窗口
343ctrl+b n # 选择下一个窗口
344ctrl+b l # 最后使用的窗口
345ctrl+b p # 选择前一个窗口
346ctrl+b w # 以菜单方式显示及选择窗口
347ctrl+b s # 以菜单方式显示和选择会话。这个常用到,可以选择进入哪个tmux
348ctrl+b t # 显示时钟。然后按enter键后就会恢复到shell终端状态
349ctrl+b d # 脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话
350```
351
352## 参考资料
353
354- tmux 官网下载地址:http://tmux.github.io/
\No newline at end of file