vi此命令主要对系统上文件进行编辑,此命令分为命令模式、插入模式、末行模式
a:在当前字符后添加文本
A:在行末添加文本
i:在当前字符前插入文本
I:在行首插入文本
o:在当前行后面插入一空行
O:在当前行前面插入一空行
:wq 保存并推出
:w 将制定的文件保存起来
:q! 不保存而强制退出
:w!:在命令模式下,执行强制存盘操作
:q:在命令模式下,执行退出vi操作
:q!:在命令模式下,执行强制退出vi操作
:e文件名:在命令模式下,打开并编辑指定名称的文件
:n:在命令模式下,如果同时打开多个文件,则继续编辑下一个文件
:f:在命令模式下,用于显示当前的文件名、光标所在行的行号以及显示比例
:set number:在命令模式下,用于在最左端显示行号
:set nonumber:在命令模式下,用于在最左端不显示行号
向右移动 --> l
向左移动 --> h
向下移动 --> j
向上移动 --> k
删除光标所在位置的字符 --> x
删除光标所在的行 --> dd(敲 d 两次)
保存当前修改并退出 --> ZZ
撤销上一步操作 --> u
移动光标到行首 --> 0 (数字 0)
移动光标到行末 --> $
移动光标到当前页最顶行 --> H
移动光标到当前页最底行 --> L
向前翻一页(Page Up) --> Ctrl + f
向后翻一页(Page Down) --> Ctrl + b
复制当前行的数据 --> yy
粘贴已经复制的数据 --> p
把当前行第一次出现的 old 字符串替换成 new 字符串 --> :s/old/new
把当前行出现的所有 old 字符串替换陈 gnew 字符串 --> :s/old/new/g
把文件中出现的所有 old 字符串替换陈 gnew 字符串 --> :%s/old/new/g
退出并保存 --> ZZ
在光标 左侧输入正文[常用] --> i
在光标 右侧输入正文[常用] --> a
在光标所在行的 下一行增添新行 --> o
在光标所在行的 上一行增添新行 --> O
在光标 所在行的开头输入正文 --> I
在光标 所在行的末尾输入正文 --> A
保存文件 [常用] --> w
将当前文件的内容保存到 file 文件 --> w file
保存文件并退出 vi 编辑器[常用] --> wq
读取 file 文件的内容,插入当前光标所在行的后面 --> r file
退出 vi 编辑器(如果当前文件有改动,则无法退出) --> q
强制退出 vi 编辑器(不保存修改)[常用] --> q!
vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格。
按「ctrl」+「b」:屏幕往"后"移动一页。
按「ctrl」+「f」:屏幕往"前"移动一页。
按「ctrl」+「u」:屏幕往"后"移动半页。
按「ctrl」+「d」:屏幕往"前"移动半页。
按数字「0」:移到文章的开头。
按数字「gg」:移到文章的开头。
按「G」:移动到文章的最后。
按「$」:移动到光标所在行的"行尾"。
按「^」:移动到光标所在行的"行首"
按「w」:光标跳到下个字的开头
按「e」:光标跳到下个字的字尾
按「b」:光标回到上个字的开头
按「dG」:光标回到首行快速删除所有内容
按「#l」:光标移到该行的第#个位置,如:5l,56l。
「x」:每按一次,删除光标所在位置的"后面"一个字符。
「#x」:例如,「6x」表示删除光标所在位置的"后面"6个字符。
「X」:大写的X,每按一次,删除光标所在位置的"前面"一个字符。
「#X」:例如,「20X」表示删除光标所在位置的"前面"20个字符。
「dd」:删除光标所在行。
「#dd」:从光标所在行开始删除#行。
「yw」:将光标所在之处到字尾的字符复制到缓冲区中。
「#yw」:复制#个字到缓冲区
「yy」:复制光标所在行到缓冲区。
「#yy」:例如,「6yy」表示拷贝从光标所在的该行"往下数"6行文字。
「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与"y"有关的复制命令都必须与"p"配合才能完成复制与粘贴功能。
「r」:替换光标所在处的字符。
「R」:替换光标所到之处的字符,直到按下「ESC」键为止。
「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次"u"可以执行多次回复。
「cw」:更改光标所在处的字到字尾处
「c#w」:例如,「c3w」表示更改3个字
「ctrl」+「g」列出光标所在行的行号。
「#G」:例如,「15G」,表示移动光标至文章的第15行行首。
# vi test.log
# vi test1.log test2.log