IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> [Acwing Linux基础课]第二讲 tmux和vim -> 正文阅读

[开发工具][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)

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-08-26 12:18:53  更:2021-08-26 12:19:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/22 19:43:26-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码