vi编辑器可以执行输出,删除,查找,替换等文本操作。vi以命令行的方式处理文本。打开vi它占据整个屏幕。
vi命令的选项及其意义
-c command 在对文件进行编辑前,先执行command命令
-r filename 恢复文件filename
-R 以只读方式编辑文件
+n file 编辑file文件,并将光标置于第n行
+ file 编辑文件,并将光标置于最后一行
+/string file 编辑file文件,并将光标置于第一个保护string所表示到的字符串的行
vi 没有加文件那就自动创建一个新的空文件。
vi port.txt(这是我打开的一个文件)
family.51cto.blog.com
edul
www.baid$u.com
www.ywtou.top$
~
~
~(波浪号填充未填满的行)
~
~
~
~
~
~
"port.txt" 4L, 57C(最后一行行显示文件名, 字符数,字节数)
打开vi编辑器有俩种模式一种是一般模式和插入模式。严格来讲还有一种末行模式。我们一一来讲
首先:是一般模式就是像上面那样刚打开文件显示出来的文件屏幕就是一般模式,一般模式只能看不能修改编辑。
family.51cto.blog.com
edul
www.baid$u.com
www.ywtou.top$
~
~
~(波浪号填充未填满的行)
~
~
"port.txt" 4L, 57C
其次:是末行模式,末行模式是输入冒号就可以进入末行模式如下显示
family.51cto.blog.com
edul
www.baid$u.com
www.ywtou.top$
~
~
~
~
~
~
: 显示这样,在末行模式下我们就可以执行一些退出保存命令
vi编辑器文本保存和退出命令
保存和退出命令 描述
w 将编辑器的文本保存
q 离开vi文本编辑器,没改变文本情况下
q! 曾修改过文本,但是不想存储,使用该命令强制离开vi
wq 存储文本并离开vi文本编辑器
最后:插入模式是需要在一般模式输入一种命令才能进入到插入模式如下显示
family.51cto.blog.com
edul
www.baid$u.com
www.ywtou.top$
~
~
~
-- INSERT --
命令模式(a i o大写字母相反 A I O ) 进入 插入模式还有其他命令进入插入模式,我们先了解这些,他们比较常用,也够我们所用。
进入插入模式常用命令
a 光标所在行向后插入 A 光标所在行的最后插入
i 光标所在行向前插入 I 光标所在行向最前插入
o 光标所在行向下插入 O 光标所在行向上插入
用于移动光标的vi命令
命令 动作
h 将光标向左移动
j + enter 向下移动
k — 向上移动
l 向右移动
} 将光标移动到当前段落的末尾
{ 当前段落开头
) 当前句子的末尾
( 当前句子的开头
^ 当前行的第一个非空字符
$ 当前行末尾
:n 移动到行n
常用的vi编辑命令
命令 动作
x 删除光标当前位置的字符
dd 删除光标所在的整行文本
d$ 删除当前光标位置到该行结束的所有文本 D :删除当前字母后面
dw 从当前光标位置向前删除单词
J 将下一行文本内容合并到本行结尾
w: 一个一个单词向后移动 b: 一个一个单词向前移动
end : 当前行行尾 home :当前行行首
g g : 文cat件首行 10gg: 移动到光标后10行位置
H :当前屏幕头部 M: 当前屏幕中间 L: 当前屏幕结尾
G: 文件最后一行
y w 粘贴一个单词
yy :复制一行可以加数字 5yy光标当前后5行包含
u :撤销一次
U :全部撤销
d w :删一个单词
d d :删除一行 10dd: 删除10行
D :删除当前字母后面 d ^ 删除当前字母前面
搜索:vi 编辑器的搜索功能,在vi编辑器下方输入“/”,搜索待输入的字符串
替换:vi 编辑器 的替换命令的基本格式为:
:s/old_string/new_string将第一次出现的old_string替换成new_string
:s/old_string/new_string/g将全文符合old_string的都替换成new_string
vi编辑器的搜索和替换命令
/word 自当前光标位置向下搜索名字为word的字符串
?word 自当前光标位置向上搜索名字为word的字符串
:n1,n2s/word/word2/g 第n1 行到n2行 的word全部替换成word2
:1,$s/word1/word2/g 第1 行到最后一行 的word1全部替换成word2
末行模式下输入:set nu 排号 nonu 删除
换符号10,15s /--/$/g 将-- 替换成$ %s /$/¥/g 同理
3,9s /^/$/g 将3到9行开头加上$