[Acwing Linux基础课]第二讲 tmux和vim

目录

tmux——一个终端复用器(terminal multiplexer)

功能

结构

操作

会话管理 

窗口管理

窗格管理

其他命令

vim教程

模式

​常用操作

参考:



tmux——一个终端复用器(terminal multiplexer)


功能


        (1) 分屏。
        (2) 允许断开Terminal连接后,继续运行进程。
   

结构

        会话(session)、窗口(window)、窗格(pane)三部分

        打开一个终端窗口(terminal window,在里面输入命令。用户与计算机的这种临时的交互,称为一次"会话".   会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完.  为了解决这个问题,会话与窗口可以"解绑":窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口

        一个tmux可以包含多个session,一个session可以包含多个window,一个window可以包含多个pane。

操作


       在这里y总为了方便把ctrl+b 改为了ctrl+a, 在平时linux使用时还是用ctrl+b

         (1) tmux:新建一个session,其中包含一个window,window中包含一个pane,pane里打开了一个shell对话框。
        (2) 按下Ctrl + a后手指松开,然后按%:将当前pane左右平分成两个pane。
        (3) 按下Ctrl + a后手指松开,然后按":将当前pane上下平分成两个pane。
        (4) Ctrl + d:关闭当前pane;如果当前window的所有pane均已关闭,则自动关闭window;如果当前session的所有window均已关闭,则自动关闭session。
        (5) 鼠标点击可以选pane。
        (6) 按下ctrl + a后手指松开,然后按方向键:选择相邻的pane。
        (7) 鼠标拖动pane之间的分割线,可以调整分割线的位置。
        (8) 按住ctrl + a的同时按方向键,可以调整pane之间分割线的位置。
        (9) 按下ctrl + a后手指松开,然后按z:将当前pane全屏/取消全屏。
        (10) 按下ctrl + a后手指松开,然后按d:挂起当前session。
        (11) tmux a:打开之前挂起的session。
        (12) 按下ctrl + a后手指松开,然后按s:选择其它session。
            方向键 —— 上:选择上一项 session/window/pane
            方向键 —— 下:选择下一项 session/window/pane
            方向键 —— 右:展开当前项 session/window
            方向键 —— 左:闭合当前项 session/window
        (13) 按下Ctrl + a后手指松开,然后按c:在当前session中创建一个新的window。
        (14) 按下Ctrl + a后手指松开,然后按w:选择其他window,操作方法与(12)完全相同。
        (15) 按下Ctrl + a后手指松开,然后按PageUp:翻阅当前pane内的内容。
        (16) 鼠标滚轮:翻阅当前pane内的内容。 

会话管理 

常用命令

tmux new  创建默认名称的会话(在tmux命令模式使用new命令可实现同样的功能,其他命令同理,后文不再列出tmux终端命令)

tmux new -s mysession  创建名为mysession的会话

tmux ls  显示会话列表

tmux a  连接上一个会话

tmux a -t mysession  连接指定会话

tmux rename -t s1 s2  重命名会话s1为s2

tmux kill-session  关闭上次打开的会话

tmux kill-session -t s1  关闭会话s1

tmux kill-session -a -t s1  关闭除s1外的所有会话

tmux kill-server  关闭所有会话

常用快捷键

ctrl+b s  列出会话,可进行切换

ctrl+b $  重命名会话

ctrl+b d  分离当前会话

ctrl+b D  分离指定会话

窗口管理

ctrl+b c 创建一个新窗口

ctrl+b , 重命名当前窗口

ctrl+b w  列出所有窗口,可进行切换

ctrl+b n  进入下一个窗口

ctrl+b p  进入上一个窗口

ctrl+b l  进入之前操作的窗口

ctrl+b 0~9  选择编号0~9对应的窗口

ctrl+b . 修改当前窗口索引编号

ctrl+b ' 切换至指定编号(可大于9)的窗口

ctrl+b f  根据显示的内容搜索窗格

ctrl+b &  关闭当前窗口

窗格管理

ctrl+b %  水平方向创建窗格

ctrl+b "  垂直方向创建窗格

ctrl+b Up|Down|Left|Right  根据箭头方向切换窗格

ctrl+b q  显示窗格编号

ctrl+b o  顺时针切换窗格

ctrl+b }  与下一个窗格交换位置

ctrl+b {  与上一个窗格交换位置

ctrl+b x  关闭当前窗格

ctrl+b space(空格键)  重新排列当前窗口下的所有窗格

ctrl+b !  将当前窗格置于新窗口

ctrl+b Ctrl+o  逆时针旋转当前窗口的窗格

ctrl+b t  在当前窗格显示时间

ctrl+b z  放大当前窗格(再次按下将还原)

ctrl+b i  显示当前窗格信息  

其他命令

tmux list-key  列出所有绑定的键,等同于ctrl+b ?

tmux list-command  列出所有命令

vim教程

模式


        (1) 一般命令模式
            默认模式。命令输入方式:类似于打游戏放技能,按不同字符,即可进行不同操作。可以复制、粘贴、删除文本等。
        (2) 编辑模式
            在一般命令模式里按下i,会进入编辑模式。
            按下ESC会退出编辑模式,返回到一般命令模式。
        (3) 命令行模式
            在一般命令模式里按下:/?三个字母中的任意一个,会进入命令行模式。命令行在最下面。
            可以查找、替换、保存、退出、配置编辑器等。


常用操作

( 1)i:进入编辑模式
(2)Esc:进入一般命令模式
(3)h或左箭头键:光标向左移动一个字符

( 4)j或问下箭头:光标问下移动一个字存

(5)k或问上箭头:光标问下移动一个字存

(6)l或向右箭头:光标问右移动一个字符
(7) n<Space>: n表示数字,按下数字后冉按空格,光标会向右移动这一行的n个字符

(8)o或功能键「Home]:光标移动到本行开头
(9)$或功能键「End]:光标移动到本行未尾

(10)G:光标移动到最后一行
(11) :n或nG :  n为数字,光标移动到第n行

♥(12)gg:光标移动到第一行,相当于1G
(13)n<Enter>: n为数字,光标向下移动n行
(14)/ word:向光标之下寻找第—个值为word的字符串。

(15)?word:向光标之上寻找第一个值为word的字符串。

(16)n:重复前一个查找操作
(17)N:反向重复前一个查找操作
(18) :n1,n2s/word1/word2/g: n1与n2为数字,在第ni行与n2行之间寻找word1这个字符串,并将该字符串替换为wozd2

(19):1,$s/word1/word2/g :将全文的word1换为word2      (1到$,即从头到尾)
♥(20) :1,$s/word1/word2/gc:将全文的word1香换为word2,且在替换前典求用户确认。

(21)v:选中文本
(22)d :删除选中的文本(剪切)

(23)dd:删除当前行(剪切)

(24)y:复制选中的文本

(25) yy:复制当前行
(26)p:将复制的数据在光标的下一行粘贴

(27)u:撤销
(28)ctrl +r:取消撤销
(29)shift+>:将选中的文本整体向右移动

(30)shift+<:将选中的文本整体向左移动

(31):w保存
(32):w !强制保存

(33) :q退出
(34):q!强制退出

(35):wq保存并退出
(36):set paste设置成粘贴模式,取消代码自动缩进

♥(37):set nopaste取消粘贴模式,开启代码自动缩进

(38):set nu显示行号
♥(39) :set nonu隐藏行号(在复制代码的时候可以不包含行号,较为方便)
♥( 40)gg=G:将全文代码格式化

♥(41):noh关闭查找关键词高亮(/word后关键词有背景色不美观,该命令可以取消)
♥(42)ctrl +q:当vim卡死时,可以取消当前正在执行的命令异常处理


每次用vim编辑文件时,会自动创建一个.filename.swp的临时文件。
如果打开某个文件时,该文件的swp文件已存在,则会报错。此时解决办法有两种:
(1)找到正在打升该文件的程序,并退出
(2)直接删掉该swp文件即可

 

在作业时保存并退出时警告”Can’t open file forwriting”,百度出来的解决办法不可行(需要用sudo),搞了好一会,感觉是进程占用了,tmux kill-server后重来发现可以了,不知道有没有别的办法hhh 


参考:

Ⅰ.y总教案

Ⅱ.阮一峰大佬的  Tmux 使用教程

Ⅲ.tmux基本操作 - Guanglin - 博客园 (cnblogs.com)

posted @ 2021-08-24 23:52  泥烟  阅读(37)  评论(0编辑  收藏  举报