玩转Linux系统的前提是玩烂文本编辑器,毫不夸张的说,文本编辑器在Linux系统中有着举足轻重的地位。现在我和小伙伴们一起来回顾下,以便加深大家的记忆。
一、VI文本编辑器
1.文本编辑器的作用
?创建或修改文本文件
?维护Linux系统中的各种配置文件
2.Linux中最常用的文本编辑器
?Vi:类UNIX操作系统的默认文本编辑器
?Vim:vim是vi文本编辑器(一般简称为vi编辑器)的增强版本(会通过文本颜色来告诉你语法是否有误、单词是否有错)。
二、编辑器的工作模式
1.工作模式分为命令、输入、末行模式三种,编辑命令都是围绕三个模式进行展开。
2.不同模式之间的切换:
?用文本编辑器,首先是在命令模式下,可通过a、i、o、O等功能进入输入模式对其进行编辑,编辑完成后,点击Esc退回到命令模式。接着输入“:”进入到末行模式,再次点击Esc即退出到命令模式。
?tip:可看出命令模式是输入、末行模式的中转站。
三、编辑命令(举足轻重)
1.光标移动
(1)方向移动
键盘↑、↓、←、→ 分别控制着上、下、左、右的光标移动
(2)翻页
a.Page?Down或Ctrl+F :向下翻动整页内容
b.Page?Up或Ctrl+B :向上翻动整页内容
(3)行内快速跳转
a.Home键或”A”??、数字“0”:跳转至行首
b.End键或“$“键 :跳转到行尾
(4)行间快速跳转
a.1G或者gg :跳转到文件的首行
b.G :跳转到文件的末尾
c.#G :跳转到文件中的第#行
(5)行号显示
a. :set?nu : 在编辑器中显示行号
b. :set?nonu : 取消编辑器中的行号显示
?
补充知识:
1.i在光标之前编辑,a在光标之后编辑(输入模式)。
2.o在光标所在位只下一行插入,O在上一行插入,M跳转到屏幕的中间一行。
2.复制、粘贴、删除(命令模式下操作)
(1)删除
a.x或Del :删除光标处的单个字符
b.dd :删除当前光标所在行
c.#dd : 删除从光标所在行开始的#行内容
d.d^ : 删除当前光标之前字符到行首的所有字符
e.d$ : 删除当前光标处到行尾的所有字符
补充:dw :删除一个单词
(2)复制
a.yy : 复制当前行整行的内容到剪贴板复制
b.#yy : 复制从光标所在行开始的#行内容
(3)粘贴
a.p : 将缓冲区中的内容粘贴到光标位置处之后
b.P (大写的P): 粘贴到光标位置处之前
知识补充:
两行对调位置:ddp(这里的dd相当于起剪切作用)
输入ddp后,神奇的事发生了:
3.文件内容查找
(1).操作键及其功能
/word?:从上而下在文件中查找字符串"word"
(2)?word?:?从下而上在文件中查找字符串"word"
a.n??:定位下一个匹配的被查找字符串
b.N?:?定位上一个匹配的被查找字符串
(3)撤销编辑及保存退出
操作键及其功能
a.u:按一次取消最近的一次操作;重复u键,恢复多步操作
b.U:用于取消对当前行所做的所有编辑
c.ZZ:保存当前的文件内容并退出vi编辑器
(4)保存文件及退出vi编辑器
保存文件
a.:W : 保存修改的内容
b.:W?/root/newfile :? ?另存为其它文件
(5)退出VI命令
a.:q :未修改文本退出
b.:q! :放弃对文件内容的修改,并退出VI
(6)保存文件退出vi??
a.:wq : 保存修改的内容并退出
?
总结:
功能ZZ等同于wq ; 功能U等同于q!
替换命令:Shift + r(替换完成后删除只会删除替换后的内容,原先内容不受影响)
(4)打开新文件或读入其它文件内容
a. : e /(新文件夹所在路径)??:打开新的文件进行编辑,文件与文件之间来回切换着编辑。
b. : r /(其它文件夹所在路径)?:?在当前文件中读入其他文件内容
(5)文件内容替换
a. :s /pld/new:将当前行中查找到的第一个字符“old”串替换为“new”
b. :s /old/new/g: 将当前行中查找到的所有字符串“old” 替换为“new”
c. :#,# s /old/new/g: 在行号“#,#” 范围内替换所有的字符串“old” 为“new”
d. :%s /old/new/g:在整个文件范围内替换所有的字符串“old”为“new”(经常使用,牢记)
输入替换全文所有字符命令,即:
e. :s /old/new/c:在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认(很少会用到)
本章总结
Vi文本编辑器工作模式
Vi编辑器不同工作模式之间的切换
Vi文本编辑器命令模式的基本操作
Vi文本编辑器末行模式的基本操作
现在社会急缺的是一专多能的人才,何谓一专多能,即能独立解决各方面的问题,并且至少要有一项专业的技术。
原文地址:https://blog.51cto.com/14475593/2429575