Linux: vi 编辑器

简介: Linux: vi 编辑器

2.3.7 vi 编辑器


编辑文件2种方法:1.windows方法:直接双击等,不再赘述。2.命令行使用 gedit


实例:


50299f762e644178a472fee7c1096b59.png


gedit 1.txt 打开并修改某个文件


ls -l /etc/environment 查看权限和位置。我们的权限是最低层权限,权限不能写,即不能修改。需要使用sudo临时改变权限来修改。


vi编译器:


linux没有图形界面,所以使用vi命令。vi 是一个命令,也是一个命令行下的编辑器,它有如下功能:


⚫ 打开文件、新建文件、保存文件


⚫ 光标移动


⚫ 文本编辑


⚫ (多行间|多列间)复制、粘贴、删除


⚫ 查找和替换


应用场景:在 Linux 系统中对文件做些简单修改时,使用 vi 命令的效率非 常高。并且在很多时候,比如现场调试时,并没有 GUI 形式的编辑工具,vi 是 唯一选择。


1. 模式


vi 编辑器有三种模式,各个模式侧重点不一样: a) 一般模式(光标移动、复制、粘贴、删除) b) 编辑模式(编辑文本) c) 命令行模式(查找和替换) vi 编辑器的三种模式间切换如下图所示:


0709246bce5a454caa3e3767df3cb4a3.png


⚫ 当不知道处于何种模式时,按 ESC 键返回到一般模式(连续按也可以)。


⚫ wq(write quit)


⚫ i(insert)


2. 文件的打开/新建/保存


打开文件、新建文件,命令如下(如果文件存在则打开文件,否则新建文件 并打开): $ vi 文件名 修改结束之后,输入“:” 进入命令行模式,再输入“wq”保存退出: :wq 保存并退出文件 注意:如果文件不存在,也需要输入“:wq”才可以保存新文件,否则不会新建 文件。在编辑完成时,返回一般模式,方法如下:


第1步 输入“:w”则保存文件,如果已经保存文件,输入“:q”则退出文件


第2步 直接输入“:wq”保存并退出


第3步 如果不想保存被修改的内容,则输入“:q!”强制退出。


3. 编辑文件


打开文件后,默认处于“一般模式”,这时可以输入以下字母:


i 在当前光标所在字符的前面,转为编辑模式。


I 在当前光标所在行的行首转换为编辑模式。


a 在当前光标所在字符的后面,转为编辑模式。


A 在光标所在行的行尾,转换为编辑模式。


o 在当前光标所在行的下方,新建一行,并转为编辑模式。


O 在当前光标所在行的上方,新建一行,并转为编辑模式。


4. 快速移动光标


在一般模式下,可以使用下面快捷键移动光标或是翻页:


h (或左方向键) 光标左移一个字符。


l (或右方向键) 光标右移一个字符。


j (或下方向键) 光标下移一行。


k (或上方向键) 光标上移一行。


nG 或 ngg 光标移动到第 n 行首。


n+ 光标下移 n 行。


n- 光标上移 n 行。


Ctrl + f 屏幕向下翻一页,相当于下一页。


Ctrl + b 屏幕向上翻一页,相当于上一页。


:set number 显示行号; :set nonumber隐藏行号。


快速的定位到某一行:文件头、文件尾、指定某一行


⚫ ngg:光标移至第 n 行的行首(n 为数字,想要跳转的行),


⚫ 1gg:就跳到第一行的行首,就是文件头


⚫ 2gg:就跳到第二行的行首


⚫ G:转至文件结尾 ② 在某一行如何快速定位到某一列:


⚫ 0:(数字零)光标移至当前行行首


⚫ $:光标移至当前行行末


⚫ fx:搜索当前行中下一个出现字母 x 的地方


注意:当你不知道 vi 当前处于何种模式时,使用 esc 键返回到一般模式。


实例:


e3b337bf844447168eb5f2db83286c80.png


vi 2.txt 使用vi编译,创建并编译txt(此处直接使用:wq退出了,所有2.txt是0字节,无内容)


ls -l 查看


vi 2.txt 第二次修改,我加入了www.baidu.com www.zhongwen.com jiayouya等


cat 2.txt 显示2.txt里的内容。


5. 文本复制/粘贴/删除/撤销


在一般模式下,可以执行以下命令:(不推荐一般模式下的操作)


cc 删除整行,并且修改整行内容。


dd 删除该行,不提供修改功能。


ndd 删除当前行向下 n 行。(如删除改行下面的4行,4dd)


x 删除光标所在的字符。


X 删除光标前面的一个字符。


nyy 复制当前行及其下面 n 行。


p 粘贴最近复制的内容。


s 删除光标所在字符。


r 替换光标处字符。


a) 复制 yy //复制当前行(光标处开始) nyy //复制当前行及其后的 n-1 行(n 是行数)(光标处开始)


b) 粘贴 p //粘贴(光标处开始)


c) 删除 dd //删除光标所在行(d:delete) ndd //删除当前行及其后的 n-1 行(n 是数字) x //删除光标所在位置的字符


d) 撤销 u //撤销上一步操作


在编辑模式中:(推荐编辑模式下的操作)


backspace,删除光标所在处。


dw:删除整个单词(光标在首字母处)


D:删除光标之后这一行的所有内容。


o:增加新行,可输入新的内容


a) 复制 yy //复制当前行(光标处开始) nyy //复制当前行及其后的 n-1 行(n 是行数)(光标处开始)


b) 粘贴 p //粘贴(光标处开始)


6. 文本查找和替换


在一般模式下,可以执行以下命令。(先输入 /xxxx)


a) 查找


⚫ n:在同一个方向重复上一次搜索命令


⚫ N:在反方向重复上一次搜索命令


⚫ 在/pattern 之前先跳到第一行则进行全文件搜索。


b) 替换


⚫ :%s/p1/p2/g //将文件中所有的 p1 均用 p2 替换


⚫ :%s/p1/p2/gc //替换时需要确认


相关文章
|
2月前
|
Ubuntu Linux 测试技术
Linux系统之部署轻量级Markdown文本编辑器
【10月更文挑战第6天】Linux系统之部署轻量级Markdown文本编辑器
123 1
Linux系统之部署轻量级Markdown文本编辑器
|
5月前
|
开发工具
vi编辑器,现在vi\vim是文本文件进行编辑的最佳选择,Vim是vi的加强的版本,兼容vi的所有指令,vim编辑器有三种工作模式,一开始进入的是命令模式,命令模式i是插入的意思,两下y+p复制内容
vi编辑器,现在vi\vim是文本文件进行编辑的最佳选择,Vim是vi的加强的版本,兼容vi的所有指令,vim编辑器有三种工作模式,一开始进入的是命令模式,命令模式i是插入的意思,两下y+p复制内容
|
2月前
|
运维 Java Linux
【运维基础知识】掌握VI编辑器:提升你的Java开发效率
本文详细介绍了VI编辑器的常用命令,包括模式切换、文本编辑、搜索替换及退出操作,帮助Java开发者提高在Linux环境下的编码效率。掌握这些命令,将使你在开发过程中更加得心应手。
39 2
|
2月前
|
Java Unix Linux
Linux vi/vim
Linux vi/vim
27 5
|
4月前
|
搜索推荐 Linux 网络安全
Linux系统中的Vim编辑器
【8月更文挑战第21天】Vim是一款功能强大的文本编辑器,在Linux系统中广泛使用。它具有三种基本模式:命令模式,用于执行操作但不能编辑文本;插入模式,允许用户像常规编辑器那样输入文本;底线命令模式,用于保存、退出及查找替换等操作。Vim还支持多窗口编辑、宏录制及插件扩展等功能,并可通过配置文件个性化设置。因其高效性、良好的可移植性和远程编辑能力,Vim特别适用于开发者和系统管理员。
|
4月前
|
Linux
真香~ Linux vi常用命令汇总!
真香~ Linux vi常用命令汇总!
|
4月前
|
Linux
Linux中vi的常用命令和快捷键使用
Linux中vi的常用命令和快捷键使用
399 0
|
5月前
|
搜索推荐 Linux 开发工具
|
4月前
|
Linux 开发工具
Linux vim编辑器
Linux vim编辑器
30 0
|
4月前
|
Unix Linux 程序员
全面介绍Linux中的Vim编辑器
全面介绍Linux中的Vim编辑器