Linux常用命令(自用)

2020-07-08 00:00:00 用户 模式 命令 文件 目录

1、在终端窗口,使用ctrl+shift+=可以放大字体,ctrl+-可以缩小字体

2、常用基本命令:

ls:对应list,查看当前文件夹下的内容

pwd:对应print work directory,查看当前所在文件夹

cd+目录名:对应change directory,切换文件夹

touch+文件名:新建文件,可以创建多个文件 touch a.txt b.txt。

mkdir +目录名:make directory,创建目录,-p表示创建多级目录

rmdir +目录名,删除目录,如果目录非空,加上-r,删除多级目录

rm+文件名:remove,删除指定的文件名

clear:清屏

3、在敲出 文件/目录/命令 的前几个字母之后,按下tab键,系统会自动补全

4、终端命令格式:command [-options][parameter] []表示可选的

5、command --help:查看某命令的帮助信息 或者 man command(man是manual的间歇)

6、ls -a可以查看当前目录的所有文件(含隐藏文件)

ls-l:以列表方式查看当前目录下的文件夹和文件

ls-l-h:文件和文件夹以具体大小的格式显示

ls也可以配合通配符使用,其中*代表任意多个字符(也可以是0个),比如:ls 1*表示列举出所有以1开头的文件和文件夹,

再比如,ls *1.txt表示所有以1结尾的txt文件,ls *3*表示所有以3结尾的文件和文件夹,

而?可以表示单个字符,如ls ?2?.txt可以查找所有名称中2在中间的文件,

[]是通配符中的字符组,比如ls[1 2 3]23.txt表示查找以X23为名称的txt文件,而x则在字符组中,

而[a-f]匹配a到f范围内的任意一个字符,如ls [a-f]23.txt表示查找以X23为名称的txt文件,而x则在[a-f]中

7、mkdir命令可以结合 -p参数循环创建子目录,

8、使用rm命令删除文件后不能恢复,要小心。-f 参数表示强制删除,忽略不存在的文件。-r参数表示递归的删除目录下的内容, 删除文件夹时必须加此参数。

1、ls-l:当前文件夹的目录和文件以列表方式展开,包括详细信息。

ls-l -h:更直接的显示文件大小

2、rm删除文件(不可恢复) rm -f强制删除,忽略不存在的文件,无需提示。rm -r递归删除目录下的内容,删除文件夹时必须加此参数

3、tree:以树状图列出文件目录结构。tree -d只显示目录

4、cp 源文件 目标文件:复制文件或目录。cp -r :若源文件是文件夹,该命令会复制整个整个文件夹。cp -i在目标文件所在的目录下已经存在和目标文件重名的文件,会有提示。

5、mv 源文件 目标文件:移动文件或目录/文件或者目录重命名(路径一致,文件名不同), mv-i在目标文件所在的目录下已经存在和目标文件重名的文件,会有提示。

6、在linux中“~”表示用户的家目录。“.”表示当前工作目录

7、cat 文件名:表示查看指定文件的内容(显示全部内容) 。

more +文件名:分屏显示内容,每次只显示一页。如果想按行显示后面的内容,可以按enter,如果按页显示,按空格键。如果想查看上一页,按ctrl+b。

或者cat a.txt | more。

less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据需要加载,对于大型文件具有较高的效率。less用来分屏查看文件内容。按enter按行显示,按空格显示下一页。

8、cat -b:在所非空行前面显示行号,cat-n:在所有行前面显示行号

9、grep 搜索文本中的指定内容,如 grep as 123.txt在123.txt中查找字符串as。grep -i as 123.txt:表示忽略大小写,即 也可以查找除AS As aS等字符串。grep还可以进行模式查找,^a搜索以a开头的行,a$搜索以a结尾的行。

10、echo在终端显示参数指定的文字,通常和重定向联合使用。

Linux允许将命令执行结果重定向到一个文件,将本应显示在终端上的内容 输出/追加到

指定文件中。

输出:> echo Hello >b(覆盖b文件重原来的内容)

追加:>>echo Hello >>b

11、管道(|):linux允许将一个命令的输出通过管道作为另一个命令的输入

如ls -lh | more:将ls -lh的结果作为more命令的输入

12、shutdown 表示在1分钟后关机

shutdown -r表示重启, shutdown -r now 表示立即重启

shutdown -c表示取消

13、网卡是一个专门负责网络通讯的硬件设备

IP地址是设置在网卡上的地址信息,如果把电脑比作电话,网卡相当于SIM卡,IP地址相 当于电话号码

14、ifconfig:查看/配置计算机当前的网卡配置信息,主要是ip地址。结合之前学习的管道操作,可以快速定位到ip地址:ifconfig | grep inet

ping ip地址:检测到目标ip地址的连接是否正常。一台计算机有可能有一个物理网卡和多个虚拟网卡。

15、只有在Windows平台才需要单独的安装一个SSH软件。SSH客户端是一种使用Secure Shell (SSH)协议连接到远程计算机的软件程序,SSH是目前比较可靠,专为远程登录会话和其他网络服务提供安全性的协议。SSH可以对数据加密和压缩,防止信息泄露和提高传输速度。

16、IP地址:通过IP地址找到网络上的计算机,域名是IP地址的别称

端口:通过端口号可以找到服务器上的应用程序。SSH服务器的默认端口号是22.

17、SSH客户端的简单使用

ssh [-p port] user@remote

user是在远程机器上的用户名,如果不指定的话默认为当前用户

remote是远程机器上的地址,可以是IP/域名,或者是别名

port是SSH Server监听的端口,如果不指定,默认是22

完整示例:ssh -p 22 python@172.16.140.138


使用exit退出当前用户的登录。

SSH终端命令只能在Linux和UNIX系统下使用,

如果在windows系统中,可以安装xshell客户端软件。

scp是secure copy的缩写,是在Linux下进行远程文件拷贝的命令,使用方法和ssh连接基本相同。只是在指定端口时用的是大写的-P,而ssh则是小写的-p。

完整示例:

在windows下有winscp的图像化工具,更方便。

scp -P port 01.py user@remote:Desktop/01.py(:后面的路径如果不是

路径,则是以用户的家目录作为参考路径,-P后面没有端口号则默认是22)

表示将本地当前目录下的01.py复制到远程家目录下的Desktop/01.py。

scp -r user@remote:Desktop demo:

把远程家目录下的Desktop复制到 当前目录下的 demo 文件夹。

scp的终端命令只能在Linux和unix系统下使用,如果在windows,可以安装winscp。

18、gedit可以编辑文本

19、chmod +/- rwx 文件名|目录名

如果对某目录没有“可执行权限”,那么对该目录的所有操作都不能进行。

没有可读权限就不能cd 进去,更不能ls查看其下的东西。

没有可写权限就不能touch文件。

20、Linux系统中的root账号通常用于系统的维护和管理,

对操作系统的所有资源具有访问权限。

在大多数版本的linux中,都不推荐直接使用root登录系统。

在linux安装的过程中,系统会自动创建一个用户账号,

这个默认的用户称为“标准用户”。

sudo

su是substitute user的缩写,表示使用另一用户的身份

sudo命令用来以其他身份来执行命令,预设的身份为root

用户使用sudo时,必须输入密码,之后有5分钟的有效期,

过期后要重新输入密码。

21、Linux中etc目录主要保存和系统配置相关的信息,包括群组信息。

22、在实际应用中,可以预先针对 组 设置好权限,然后 将不同的用户添加到对应的组中,从而不用为每一个用户设置权限。

23、组管理终端命令

创建组/删除组的终端命令都需要通过sudo执行,即sudo groupadd 组名。

groupadd 组名:添加组。使用cat /etc/group查看新建的组

groupdel 组名:删除组

cat/etc/group:查看组信息

chgrp 组名 文件/目录名:修改文件/目录的所属组,如 sudo chgrp dev python学习

24、用户管理终端命令(需要sudo执行)

(1)创建用户 useradd -m -g 组 新建用户名:添加新用户

其中,-m表示自动建立用户home目录,-g指定用户所在的组,否则会创建一个和用户同名的组

(2)passwd 用户名:设置用户密码

如果是普通用户,直接用passwd,可以修改自己的账户密码

(3)userdel -r 用户名:删除用户

-r会自动删除用户home目录

如果在创建用户时没有使用 -m,不会给新用户创建家目录,可以先删除userdel -r删除新用户,重新建。

(4)cat/etc/passwd | grep 用户名:确认(查看)用户信息,

因为新建的用户信息会保存在/etc/passwd文件中

25、id 用户名:可以查看UID(用户编号)和GID(组代号)

passwd文件

/etc/passwd :存放的是用户的信息,由6个分号组成的7个信息,分别是

1、用户名

2、密码(x,表示加密的密码)

3、UID(用户标识)

4、GID(组标识)

5、用户全名或本地账号

6、家目录

7、登录使用的shell,就是登录之后使用的终端命令,Ubuntu默认是dash

26、who:查看当前所有登录的用户列表

whoami:查看当前登录用户的账号名

27、usermod可以用来设置用户的主组/附加组和登录shell,命令格式如下:

主组:通常在新建用户时指定,在etc/passwd的第4列GID对应的组。

附加组:在etc/group中后一列表示该组的用户列表,用于指定用户的附加权限

ps:设置了用户的附加组之后,需要重新登录才能生效。

#修改用户的主组(passwd中的GID)

usermod -g 组 用户名

#修改用户的附加组

usermod -G 组 用户名

#修改用户登录shell

usermod -s /bin/bash

注意:默认使用useradd添加的用户没有权限使用sudo以root

身份执行命令,可以使用以下命令,将用户添加到sudo附加组中。

usermod -G sudo 用户名

28、shell是一个软件,可以输入终端命令。

which 指令:可以查看指令的所在位置

29、su 用户名:切换用户,此时工作目录是原用户的家目录

su -用户名:切换用户,此时工作目录是切换后的用户的家目录

30、修改文件权限:

chown:修改拥有者

chgrp:修改组

chmod:修改权限

命令格式如下:

#修改文件/目录的所有者

chown 用户名 文件名|目录名

#递归修改文件/目录的组

chgrp -R 组名 文件名/目录名

#递归修改文件权限

chmod -R 755 文件名/目录名

chmod在设置权限时,可以简单的使用3个数字分别对应拥有者/组和其他用户的权限。

31、date:查看系统时间。

cal:calendar查看日历,-y选项可以查看一年的日历。

df -h:disk free显示磁盘剩余空间

du-h [目录名]:disk usage显示目录下 的文件大小.

其中,-h表示人性化的显示文件大小。和ls -l -h一样。

32、所谓进程,就是正在执行的一个程序。

ps aux:process status查看进程的详细状况

top:动态显示运行中的进程并且排序。退出top,可以输入q

kill [-9]进程代号:终止指定代号的进程,-9表示强行终止。

ps 后没有参数的话,只会显示当前用户通过终端启动的应用程序。

ps 后的参数说明

a :显示终端上的所有进程,包括其他用户的进程

u:显示进程的详细状态

x:显示没有控制终端的进程,使用该参数,输出会很多。

使用kill命令好只终止当前用户开启的进程。

33、查找文件

find命令功能非常强大,通常再特定的目录下 搜索符合条件的文件

find [路径] -name “.py”:查找指定路径下扩展名为.py的文件,包括子目录。

如果省略路径,表示在当前文件夹下查找

之前学习的通配符,在find命令下也可以用。

如: find -name "*.txt"

find -name "1*"

34、软连接:文件的软连接类似windows下的快捷方式

命令:ln -s 被链接的源文件 链接文件:建立文件的软连接

没有 -s选项表示建立的是一个硬链接文件(两文件占用相同的硬盘大小)

源文件要使用路径,不能使用相对文件,这样以后以后链接文件后,还能正常使用

35、 tar 是Linux中常用的备份工具,可以把一系列文件打包成一个大文件,也可以把一个打包的大文件恢复成一系列文件。

命令格式如下:

#打包文件

tar -cvf 打包文件.tar 被打包的文件/路径...

#解包文件

tar -xvf 打包文件 .tar

tar与gzip命令结合可以实现文件的打包和压缩

tar只负责打包文件,但不压缩

用gzip压缩tar打包后的文件,起扩展名一般用XXX.tar.gz.

在tar命令中有一个选项-z可以调用gzip,从而可以方便的实现压缩和解压缩的功能。

格式如下:

#压缩文件

tar -zcvf 打包文件.tar.gz 被压缩的文件/路径。。。

#解压缩文件

tar -zxvf 打包文件.tar.gz

#解压缩到指定路径

tar -zxvf 打包文件.tar.gz -C目标路径(解压缩的目录要存在)

tar与bzip2命令的结合可以实现文件的打包和压缩(用法和gzip一样)

tar只负责打包,bzip2压缩tar打包后的文件,起扩展名用XXX.tar.bz2

在tar命令中有一个选项 -j可以调用bzip2。

格式如下:

#压缩

tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径

36、通过apt安装/卸载软件

apt是advanced packing tool的缩写,是linux下的一款安装包管理工具。

可以在终端中方便的安装。卸载。更新软件包

#安装软件

sudo apt install 软件包

#卸载软件

sudo apt remove 软件包

#更新软件包

sudo apt upgrade



################################################################

37、vim命令

对服务器上的文件进行修改,要使用ssh远程登录到服务器上,并使用vi进行快速的编辑即可,在没有图形界面的环境下,要编辑文件,vi是佳选择。vi:visual interface

vim是从vi发展出来的一个文本编辑器,支持代码补全、编译、以及错误跳转等方便编程的功能。在很多linux发行版中,直接把vi做成vim的软连接(快捷方式)。

vi 文件名:打开或新建文件,如果文件存在,打开,否则,新建。

vi 文件名 +行数:打开文件并定位行,如果只带上+,而不指定行号,会直接定位到文件末尾。

38、如果vi异常退出,在磁盘上可能会保存交换文件,下次再使用vi编辑该文件时,会有以下信息,按字母d就可以删除交换文件。

39、vi有三种基本工作模式:

1、命令模式:打开文件就进入命令模式,是使用vi的入口,在该模式下可以对文件进行常规的操作,大家可以快速地查找、定位、修改和删除代码。在这个模式下,大家输入的所有内容都会被 vim 解析成相应的指令并执行。如果要输入内容,必须键入字母 i 来命令vim 切换到所谓的编辑模式(Insert)。在插入模式下,大家就可以像在其他普通编辑器下那样输入文字了。


在命令模式下,按“:”就进入了末行模式,进入末行模式后,按esc退出到命令模式。在命令模式下,按“i”就进入了编辑模式,进入编辑模式后,按esc退出到命令模式。

2、末行模式:执行保存、退出操作,w保存,q退出,wq保存退出。

3、编辑模式:正常的编辑文字。在命令模式下按"i"进入编辑模式,按esc退出到命令模式。无法从编辑模式直接进入末行模式,需要先进到命令模式,载进到末行模式。

在末行模式下的指令:

| w | write | 保存 |

| q | quit | 退出,如果没有保存,不允许退出

| q! | quit | 强行退出,不保存退出

| wq | write & quit | 保存并退出

| x | | 保存并退出

40、命令模式下的移动指令介绍:

打开文件就进入命令模式,在这个模式下,大家输入的所有内容都会被 vim 解析成相应的指令并执行。

jklh分别表示向下上左右移动,w和b表示向后和向前移动一个单词,0(zero)和$表示回到行首和行尾,^表示去到行首个非空字符。

41、(1)yy用来拷贝当前行,3yy拷贝当前行向下的3行,p是粘贴

(2)dd用来删除当前行,3dd删除当前行向下的3行

(3)在文件中查找某个单词,比如c++,先进入命令模式下,/关键字(/c++),回车 查找,输入n就是查找下一个。

(4)设置文件的行号,取消文件的行号:进入命令模式下,输入:,再输入set nu和set nonu

(5)编辑/etc/profile文件,在命令模式下,使用快捷键到文档的末行[G]和行首[gg]

(6) 在编辑模式下,在一个文件中输入“hello”,然后想撤销这个输入,回到命令模式,输入u即可。

(7)编辑 /etc/profile文件,并将光标移动到第20行:shift+g

具体是:1先显示行号(set nu)2回到命令模式 3输入20 按shift+g

42、行数跳转和上下翻页

在命令模式下,行数跳转和上下翻页

gg:到文件顶部,

G:到文件底部,

数字gg/数字G:移动到数字对应的行数

ctrl+b:向上翻页

ctrl+f:向下翻页


43、段落切换和括号切换

移动(程序)

(1)段落移动(以段落为单位切换光标)

在vi中使用空行来区分段落,在程序开发时,通常一段功能相关的代码会写在一起--之间没有空行

{:上一段

}:下一段

(2)括号切换

在程序世界里,{}、[]、()使用频率很高,而且是成对出现的

可以使用%定位一行代码中的上述符号


44、利用标记返回之前需要编辑的代码位置

在开发时,如果某一行代码需要稍后处理,比如编辑、查看,

可以先在该行使用m增加一个标记,这样可以在需要时快速切换回来,

标记名称可以是a~z或者A~Z之间的一个字母,

比如在第23行按下ma,则该行别标记,标记名称为a,

在其它行使用'a可以直接定位到标记a所在的位置。

#########下面进入编辑模式的命令##########################

45、选中文本:三种选择文本的方式:

先学习怎么选中要复制的代码,

在vi中要选择文本,需要先使用visual命令切换到可视模式,

vi中提供了三种可视模式,按Esc可以放弃选中,返回到命令模式

v:从光标位置开始按正常模式选择文本,可以与移动命令连用

V:选中光标经过的完整行

ctrl+v:垂直方向选中文本

46、撤销和恢复命令

1、怎么撤销之前一次错误的编辑动作

u:undo,撤销上次命令

ctrl+r :redo,恢复撤销的命令

47、删除命令演练

| 命令 | 英文 | 功能 |

| x | cut | 删除光标所在字符,或者选中文字 |

| d(移动命令) | delete | 删除移动命令对应的内容 |

| dd | delete | 删除光标所在行,可以 ndd 复制多行 |

| D | delete | 删除至行尾 |

> 提示:如果使用 **可视模式** 已经选中了一段文本,那么无论使用 `d` 还是 `x`,都可以删除选中文本

* 删除命令可以和 **移动命令** 连用,以下是常见的组合命令:

* dw # 从光标位置删除到单词末尾

* d0 # 从光标位置删除到一行的起始位置

* d} # 从光标位置删除到段落结尾

* ndd # 从光标位置向下连续删除 n 行

* d代码行G # 从光标所在行 删除到 指定代码行 之间的所有代码

* d'a # 从光标所在行 删除到 标记a 之间的所有代码

48、复制和粘贴

| 命令 | 英文 | 功能 |

| y(移动命令) | copy | 复制 |

| yy | copy | 复制一行,可以 nyy 复制多行 |

| p | paste | 粘贴 |

49、替换命令

| 命令 | 英文 | 功能 | 工作模式 |

| r | replace | 替换当前字符 | 命令模式 |

| R | replace | 替换当前行光标后的字符 | 替换模式 |

* `R` 命令可以进入 **替换模式**,替换完成后,按下 `ESC` 可以回到 **命令模式**

* **替换命令** 的作用就是不用进入 **编辑模式**,对文件进行 **轻量级的修改**

50、缩排和重复执行

| 命令 | 功能 |

| >> | 向右增加缩进 |

| << | 向左减少缩进 |

| . | 重复上次命令 |

* **缩排命令** 在开发程序时,**统一增加代码的缩进** 比较有用!

* 一次性 **在选中代码前增加 4 个空格**,就叫做 **增加缩进**

* 一次性 **在选中代码前删除 4 个空格**,就叫做 **减少缩进**

* 在 **可视模式** 下,缩排命令只需要使用 **一个** `>` 或者 `<`

> 在程序中,**缩进** 通常用来表示代码的归属关系

>

> * 前面空格越少,代码的级别越高

> * 前面空格越多,代码的级别越低

51、查找

输入/,再输入要查找的字符串,如/str。

查找到指定内容之后,使用 `Next` 查找下一个出现的位置:

* `n`: 查找下一个

* `N`: 查找上一个

单词快速匹配:

| * | 向后查找当前光标所在单词 |

| # | 向前查找当前光标所在单词 |

52、查找并替换

在 `vi` 中查找和替换命令需要在 **末行模式** 下执行,命令格式如下:

%s/旧文本/新文本/g

1) 全局替换

一次性替换文件中的 **所有出现的旧文本**

命令格式如下:

:%s/旧文本/新文本/g(:是进入末行模式)

2) 可视区域替换

先用可视行模式V选中要替换文字的 范围

命令格式如下:

:s/旧文本/新文本/g

3)确认替换

如果把末尾的 `g` 改成 `gc` 在替换的时候,会有提示!**推荐使用!**

:%s/旧文本/新文本/gc

1. `y` - `yes` 替换

2. `n` - `no` 不替换

3. `a` - `all` 替换所有

4. `q` - `quit` 退出替换

5. `l` - `last` 后一个,并把光标移动到行首

6. `^E` 向下滚屏

7. `^Y` 向上滚屏

53、编辑命令

在 `vi` 中除了常用的 `i` 进入 编辑模式外,还提供了以下命令同样可以进入编辑模式:

| 命令 | 英文 | 功能 | 常用 |

| i | insert | 在当前字符前插入文本 | 常用 |

| I | insert | 在行首插入文本 | 较常用 |

| a | append | 在当前字符后添加文本 | |

| A | append | 在行末添加文本 | 较常用 |

| o | | 在当前行后面插入一空行 | 常用 |

| O | | 在当前行前面插入一空行 | 常用 |

54、编辑命令和数字连用

* 在开发中,可能会遇到连续输入 `N` 个同样的字符, 例如:`**********` 连续 10 个星号,

要实现这个效果可以在 命令模式下,

1. 输入 `10`,表示要重复 10 次

2. 输入 `i` 进入 **编辑模式**

3. 输入 `*` 也就是重复的文字

4. 按下 `ESC` 返回到 **命令模式**,返回之后 `vi` 就会把第 `2、3` 两步的操作重复 `10` 次

> 提示:正常开发时,在进入编辑模式之前,不要按数字

55、利用 可视块 给多行代码增加注释

在开发中,可能会遇到一次性给多行代码增加注释的情况

> 在 `Python` 中,要给代码增加注释,可以在代码前增加一个 `# `

要实现这个效果可以在 命令模式 下,

1. 移动到要添加注释的 第 1 行代码,按 `^` 来到行首

2. 按 `CTRL + v` 进入 可视块 模式

3. 使用 `j` 向下连续选中要添加的代码行

4. 输入 `I` 进入 编辑模式,并在 行首插入,注意:一定要使用 I,i不行

5. 输入 `# ` 也就是注释符号

6. 按下 `ESC` 返回到 命令模式,返回之后 `vi` 会在之前选中的每一行代码前插入 `# `

56、分屏命令

属于 `vi` 的命令 —— 可以 同时编辑和查看多个文件

### 5.1 末行命令扩展

末行命令主要是针对文件进行操作的:保存、退出、保存&退出、搜索&替换、另存、新建、浏览文件

| 命令 | 英文 | 功能 |

| :e . | edit | 会打开内置的文件浏览器,浏览要当前目录下的文件 |

| :n 文件名 | new | 新建文件 |

| :w 文件名 | write | 另存为,但是仍然编辑当前文件,并不会切换文件 |

> 提示:切换文件之前,必须保证当前这个文件已经被保存!

* 已经学习过的 **末行命令**:

| 命令 | 英文 | 功能 |

| :w | write | 保存 |

| :q | quit | 退出,如果没有保存,不允许退出 |

| :q! | quit | 强行退出,不保存退出 |

| :wq | write & quit | 保存并退出 |

| :x | | 保存并退出 |

| :%s///gc | | 确认搜索并替换 |

> 在实际开发中,可以使用 `w` 命令 阶段性的备份代码

5.2 分屏命令

使用 分屏命令,可以同时编辑和查看多个文件

| 命令 | 英文 | 功能 |

| :sp [文件名] | split | 横向增加分屏 |

| :vsp [文件名] | vertical split | 纵向增加分屏 |

#### 1) 切换分屏窗口

> 分屏窗口都是基于 `CTRL + W` 这个快捷键的,`w` 对应的英文单词是 `window`

| 命令 | 英文 | 功能 |

| w | window | 切换到下一个窗口 |

| r | reverse | 互换窗口 |

| c | close | 关闭当前窗口,但是不能关闭后一个窗口 |

| q | quit | 退出当前窗口,如果是后一个窗口,则关闭 vi |

| o | other | 关闭其他窗口 |


#### 2) 调整窗口大小


> 分屏窗口都是基于 `CTRL + W` 这个快捷键的,`w` 对应的英文单词是 `window`


| 命令 | 英文 | 功能 |

| :---: | :---: | --- |

| + | | 增加窗口高度 |

| - | | 减少窗口高度 |

| > | | 增加窗口宽度 |

| < | | 减少窗口宽度 |

| = | | 等分窗口大小 |


> 调整窗口宽高的命令可以和数字连用,例如:`5 CTRL + W +` 连续 5 次增加高度

相关文章