vi查找关键字(vi替换字符)
Vi是一个开源的可视编辑器工具,它拥有许多扩展的功能。
#Vi 文件名
⑴ 如果文件已存在,则此文件被打开并且显示此文件的内容。
⑵ 如果文件不存在,则Vi在第一次存盘时自动将此文件建立在硬盘上。
Vi的编辑工作在内存的缓存中完成。在一个编辑会话开始后,vi从磁盘读取文件的内容至缓存中进行编辑工作。在编辑会话期间,vi在内存中保存所有修改后的拷贝。它不修改硬盘上的文件拷贝,直到你将缓存中的文件写到磁盘中为止。
⑴ #vi +53 filename
⑵ #vi +/foo(字符串)filename
打开文件filename时,⑴ 光标将放在第53行的开头 ;⑵ foo字符串第一次出现的地方。
运行vi,并指定你想要建立的文件名。
#vi 新建的的文件名
⑴ 指令/浏览模式
·用于浏览、删除、剪贴、查找文本等。
·可以用各种指令进入插入模式。
⑵ 插入模式
·用于输入新文档。
·用<ESC>退出插入模式返回命令模式。
Vi编辑器提供两种分开的模式:命令模式和插入模式。这经常被认为是vi的一个大的缺陷,但往往这也是vi的优势所在。理解其中的区别是掌握vi的关键。Vi开始启动时处于命令模式。在这种模式下,我们可以在文件中到处移动光标,修改文本的某个特定区域,剪切、复制和粘贴文本等。插入模式是指用户可以真正插入文本,换句话说,命令模式是用来在文件中移动光标进行浏览,而插入模式是用来在文件中键入文本。
⑴ i:光标在当前位置进入插入模式(常用)
⑵ I:光标跳到行首并进入插入模式
⑶ a:光标后退一格并进入插入模式(常用)
⑷ A:光标退到行尾并进入插入模式
⑸ o:在光标所在行下新起一行并进入插入模式(常用)
⑹ O:在光标所在行上新起一行并进入插入模式
⑺ s:删除光标所在字符并进入插入模式
⑻ S:删除光标所在行并进入插入模式
h 将光标向左移动一格(字符)
l 将光标向右移动一格(字符)
j 将光标向下移动一格(字符)
k 将光标向上移动一格(字符)
0(数字) 将光标移到该行的最前面,即行头
$ 将光标移到该行的最后面,即行尾
w 将光标移到下一个单词的第一个字符
b 将光标移到本单词的第一个字符,如果光标所在位置为本单词的第一个字符则将光标移到上一个单词的第一个字符
e 将光标移到本单词的最后一个字符,如果光标所在位置为本单词的最后一个字符则将光标移到下一个单词的最后一个字符
gg 到文件头
G 到文件尾
H 到屏幕左上端
M 到屏幕当中最左端
L 到屏幕左下端
( 跳到上一句开头
) 跳到下一句开头
{ 跳到上一段开头
} 跳到下一段开头
= 下一行或【Enter】
^ 当前行第一个空字符
ng 到文件第n行
n% 到文件%n行
nl 到文件第几列
【Ctrl+g】 显示总行数
【Ctrl+f】 向前滚动一屏
【Ctrl+b】 向后滚动一屏
【Ctrl+d】 向前(下)滚半屏
【Ctrl+a】 向后(上)滚半屏
数字与各种命令组合,能将光标移动更远。
例:12k :光标上移12行
20b :光标前移20个单词
:w —保存文件
:q —如果未对文件做改动则退出
:wq或 :x或 ZZ意为保存文件并退出。
:w filename
:w!
:q!
:w 或 :q或zz
—保存当前文件并退出
:q! —放弃存储并退出
:e 文件名 —打开另一个文件并开始编辑
:w 文件名 —另存为一个新文件名
:w! —强迫写到你的只读文件中
:m , nw 文件名 —写当前文件的m到n行为filename文件
:m , nw >> 文件名 —追加当前文件的m到n行到filename文件中
:e! —放弃当前编辑的文件,回到先前的拷贝
:e! 文件名 —放弃当前编辑文件,编辑一个新文件
:r filename —将filename 文件的内容读到当前行的后面
:n —编辑下一个文件,如果Vi正编辑几个文件
指令模式下: 删除:
x —删除单个字符
nx —删除下几个字符
dd —删除当前行
dw —删除到下一个单词尾,包括下一个空格字符
ndw —删除下几个单词
d$ —删除到行尾
nd$ —删除到n行头
拷贝:
yw —拷贝一个单词
nyw —拷贝下第n个单词
y$ —拷贝到行尾
yy —拷贝整行
粘贴:
P —粘贴文本到当前位置右侧
p —粘贴文本到当前位置左侧
⑴ 移动光标以选定操作块
⑵ c剪切选定块
⑶ y复制选定块
⑷ P将选定内容贴在光标所在位置右手边