vi编辑器
vi编辑器有三种模式
1)一般模式(光标移动、复制、粘贴、删除、撤销) hjkl、 ngg/G、 0、$、fx(←↓↑→) 行切换(ngg) 列切换(0,$, fx)
yy/nyy
复制当前行/复制当前行及以下n-1行
p粘贴
dd/ndd、x删除/删除当前行及以下n-1行、删除当前字符
u撤销
2)编辑模式(编辑文本) i a o当前光标前一字符 当前光标下一字符 另起一行
由一般模式切换到编辑模式
3)命令行模式(查找和替换、保存退出文件) /pattern、 :%s/p1/p2/gc、 :wq查找pattern 将p1替换成p2(g全局征求同意) 保存退出
作业:1)用vi 新建一个文件test2.txt,然后输入”welaome to the world of vi.”,并保存。2)由于拼写错误,需要将其中的welaome中的a替换成c。3)在上步的基础上,复制第一行到第二行和第三行。4)在上步的基础上,删除第三行的全部内容。5)在上步的基础上,搜索出现vi的地方。6)在上步的基础上,将字符串vi替换成vim。7)保存并退出。一个编辑器具备的功能1)打开文件、新建文件、保存文件2)光标移动3)文本编辑4)(多行间|多列间)复制、粘贴、删除5)查找和替换//=========================================vi编辑器的配置cd /etc/vimcp vimrc ~/.vimrccd ~gedit .vimrc在.vimrc中加入如下内容:"关闭兼容功能set nocompatible "显示行号set number"编辑时 backspace 键设置为2个空格set backspace=2"编辑时 tab 键设置为4个空格set tabstop=4"设置自动对齐为4个空格set shiftwidth=4"搜索时不区分大小写set ignorecase"搜索时高亮显示set hlsearch//=========================================vi编辑器有三种模式1)一般模式(光标移动、复制、粘贴、删除)2)编辑模式(编辑文本)3)命令行模式(查找和替换)注意:1)当不知道处于何种模式时,按ESC键返回到一般模式。2)wq(write quit)3)i(insert)//==================================================i编辑器的使用一个编辑器具备的功能1)打开文件、新建文件、保存文件2)光标移动3)文本编辑4)(多行间|多列间)复制、粘贴、删除5)查找和替换//=========================================vi编辑器的配置cd /etc/vimcp vimrc ~/.vimrccd ~gedit .vimrc在.vimrc中加入如下内容:"关闭兼容功能set nocompatible "显示行号set number"编辑时 backspace 键设置为2个空格set backspace=2"编辑时 tab 键设置为4个空格set tabstop=4"设置自动对齐为4个空格set shiftwidth=4"搜索时不区分大小写set ignorecase"搜索时高亮显示set hlsearch//=========================================vi编辑器有三种模式1)一般模式(光标移动、复制、粘贴、删除)2)编辑模式(编辑文本)3)命令行模式(查找和替换)注意:1)当不知道处于何种模式时,按ESC键返回到一般模式。2)wq(write quit)3)i(insert)//==================================================1.打开文件、新建文件、保存文件
vi 文件名 如果文件存在,输入结束后,:wq保存并退出文件
如果文件不存在,输入结束后,:wq就可以新建并保存文件在编辑完成时,返回一般模式,1)输入:w则保存文件,如果已经保存文件,输入:q则退出文件2)直接输入:wq保存并退出3)如果不想保存被修改的内容,则:q!强制退出。2.从一般模式进入编辑模式
i(在光标前开始插入文本)
a在光标后开始插入文本o(在当前行之下新开一行,并到行首)3. 光标移动
在一般模式下,hjkl这四个按键就可以移动光标
h(左)j(下)k(上)l(右)快速的定位到某一行:文件头、文件尾、指定某一行ngg光标移至第n行的行首(n为数字), 如1gg就跳到第一行的行首,就是文件头 如2gg就跳到第二行的行首 G转至文件结尾注意:ngg和G是在一般模式在某一行如何快速定位到某一列0(数字零)光标移至当前行行首$光标移至当前行行末fx搜索当前行中下一个出现字母x的地方注意:0、$、fx是在一般模式vi的难点:1)vi操作之前,先判断一下当前是哪一种模式,再看光标所在位置。当你不知道处于何种模式时,使用esc键返回到一般模式。再看光标,难点在于移动光标,可以做到快速切换到某一行某一列。4.文本复制、粘贴、删除、撤销
yy复制当前行(y:yank(复制))
nyy复制当前行及其后的n-1行(n是数字)使用P键来粘贴(p:paste)dd 删除光标所在行(d:delete)ndd 删除当前行及其后的n-1行(n是数字)按u键来撤销上一步操作x删除光标所在位置的字符注意:yy/nyy/dd/ndd/x/u都是在一般模式。5. 查找和替换
/pattern 从光标开始处向文件尾搜索pattern,后按下n或N
注意:n在同一个方向重复上一次搜索命令N在反方向重复上一次搜索命令n(N)来源于next注意:在/pattern之前先跳到第一行则进行全文件搜索。:%s/p1/p2/g将文件中所有的p1均用p2替换:%s/p1/p2/gc替换时需要确认s:substitute替换g:global全局c:confirm确认 vi的难点:1)vi操作之前,先判断一下当前是哪一种模式,再看光标所在位置。当你不知道处于何种模式时,使用esc键返回到一般模式。再看光标,难点在于移动光标,可以做到快速切换到某一行某一列。