Linux之vi和vim编辑器常用命令
Posted 夏木炎
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux之vi和vim编辑器常用命令相关的知识,希望对你有一定的参考价值。
一、一般模式
以vi打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中, 你可以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档案内容, 也可以使用『复制、贴上』来处理你的文件数据。
表1-1常用语法
语法 | 功能描述 |
yy | 复制光标当前一行 |
y数字y | 复制一段(从第几行到第几行) |
p | 箭头移动到目的行粘贴 |
u | 撤销上一步 |
dd | 删除光标当前行 |
d数字d | 删除光标(含)后多少行 |
x | 删除一个字母,相当于del,向后删 |
X | 删除一个字母,相当于Backspace,向前删 |
yw | 复制一个词 |
dw | 删除一个词 |
shift+^ | 移动到行头 |
shift+$ | 移动到行尾 |
gg或者1+G | 移动到页头 |
G | 移动到页尾 |
数字+G(先输入数字,在按G) | 移动到目标行 |
二、编辑模式
在一般模式中可以进行删除、复制、粘贴等的动作,但是无法编辑文件内容!要等到你按下『i, I, o, O, a, A, r, R』等任何一个字母之后才会进入编辑模式。
注意了!通常在Linux中,按下这些按键时,在画面的左下方会出现『INSERT或 REPLACE』的字样,此时才可以进行编辑。而如果要回到一般模式时, 则必须要按下『Esc』这个按键即可退出编辑模式。
1.进入编辑模式
表1-2 常用语法
按键 | 功能 |
i | 当前光标前 |
a | 当前光标后 |
o | 当前光标行的下一行 |
I | 光标所在行最前 |
A | 光标所在行最后 |
O | 当前光标行的上一行 |
2.退出编辑模式
按『Esc』键
三、指令模式
在一般模式当中,输入『 : / ?』3个中的任何一个按钮,就可以将光标移动到最底下那一行。
在这个模式当中, 可以提供你『搜寻资料』的动作,而读取、存盘、大量取代字符、离开 vi 、显示行号等动作是在此模式中达成的!
1.基本语法
表1-3
命令 | 功能 |
:w | 保存 |
:q | 退出 |
:! | 强制执行 |
/ 要查找的词 | n 查找下一个,N 往上查找 |
? 要查找的词 | n是查找上一个,N是往下查找 |
:set nu | 显示行号 |
:set nonu | 关闭行号 |
ZZ(shift+zz) | 没有修改文件直接退出,如果修改了文件保存后退出 |
2.案例实操
(1)强制保存退出
:wq!
四、模式间转换
Linux之小白入门三
摘自朱有鹏老师公开课视频
3、编辑器vi的使用(vi和vim的联系)
什么是编辑器?编辑器就是一款软件,它的主要作用就是用来编辑。譬如编写文件,编写代码。
Windows中的常用编辑器,如自带的notepad。比较好用的notepad++,UltraEditor,SlickEditor
Linux中常用编辑器,自带的最古老的vi。比较好用的vim,gedit。
注:vi和vim的关系:vim是vi的升级版,推荐使用vim。
我们在后面提到vi时,其实都是指vim。
3.1、vi基础使用
*使用vi来打开/创建一个文件,vi pathname
*vi的两种模式:
命令模式:当vi打开时默认为命令模式,要转入输入模式,需要按a或者i键。在命令模式下,此时键盘上输入的所有东西都被vi当作命令来对待。
在命令模式下,最好不要乱输入。此时应该输入相应的命令,来让vi做相应的事。
输入模式:输入模式用来向文件输入内容。可以从命令模式中按a或者i进入输入模式。进入输入模式后,就可以随意按键盘进行输入了。输入完成后如果要保存,要先退回到命令模式(因为保存也是一种命令)。在输入模式下按ESC键退回到命令模式。
注:注意看屏幕左下角,当命令模式时无提示信息或者提示文件名等信息,等处于输入模式时,提示 -- INSERT --
在命令模式下如何保存:
:wq 保存并且退出
:w 只保存不推出
:q 不保存退出 进来看了一下没改退出
:q! 不保存强制退出
:wq! 保存并强制退出
3.2、vi的高级使用
* 查找
在命令模式下,输入/xxx,就可以查找到xxx
* 快速切换行
在命令模式下,输入:num,就可以快速切换到num行
* 设置显示行号
在命令模式下,输入:set nu,就可以显示行号
注:设置不显示行号,命令模式输入:set nonu
设置永久显示行号,需要修改vi的配置文件。打开vi的配置文件~/.vimrc,在其中输入set nu即可。
* 行删除
命令模式下,先将光标移动到要删除的行,然后输入dd
如果要删除连续多行,譬如要删除连续的3行,使用3dd
* 行复制粘贴
复制:命令模式下,nyy
粘贴:命令模式下,p
细节,复制时要把光标放在多行的第一行,粘贴时实际
粘贴到当前光标所在行的下一行。
3.3、linux中权限表示&管理
3.3.1、普通用户与特权用户 su命令切换用户
Windows中有普通用户和特权用户,特权用户是Administrator,普通用户可以有很多个。
特权用户是系统的管理员,对系统内所有文件具有操作权限。每个普通用户只能处理自己的文件,不能访问其他用户的文件,更不能随意处理操作系统的文件。
Linux中也有普通用户和特权用户的区别。特权用户就是root用户。普通用户权限受到限制,譬如说普通用户不能
cd /root,普通用户不能使用apt-get install 来装软件。
3.3.2、rwx与权限表示
ls -l显示详细信息
drwxr-xr-x 10个字符,第一个表示文件类型。剩下的9个分成3组,表示文件权限。
前三个表示此文件的属主对文件的权限
中间三个表示此文件属主所在的组对文件的权限
最后三个表示其他用户对文件的权限
rwx怎么解析:r代表可读,w代表可写,x代表可执行
rwx:可读,可写,可执行
r-x: 可读,不可写,可执行
r--: 可读,不可写,不可执行
3.3.3、使用sudo暂时获取root权限
这是ubuntu的一个特点,在ubuntu中可以使用sudo命令让普通用户暂时获取root用户的权限,而不必进行用户切换。
以上是关于Linux之vi和vim编辑器常用命令的主要内容,如果未能解决你的问题,请参考以下文章