Linux文本编辑器

1.Vi的工作模式:

命令模式

末行模式

编辑模式

2. Vi打开文件的方式

 Vifilename:打开或新建文件,并将光标至于第一行首

 Vi+n filename:打开文件,并将光标至于第N行首

Vi +pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处

Vi –r filename:在上次使用vi时发生崩溃,恢复filename

Vi filename1 ……filename :打开多个文件,依次进行编辑,可在末行模式下采用filename命令切换所编辑的文件

3.保存和退出vi

:W 保存文件

:w filename保存在filename文件

:q 推出编辑器,如果文件已修改,则使用下面的命令

:q!退出编辑器,且不保存

:wq 退出编辑器,且保存文件

:x退出编辑器,且保存文件

4. 插入文本或行

a:在当前光标位置的右边添加文本

i:在当前光标位置的左边添加文本

A:在当前行的末尾位置添加文本

I:在当前行的开始处添加文本

O:在当前行的上面新建一行

O:在当前行的下面新建一行

s:删除光标后的一个字符,然后开始插入模式

S:删除光标所在的行,然后进入插入模式

R:替换(覆盖)当前光标位置及后面的若干文本

5.移动光标

K 上

J 下

H 左

L 右

6.同一行中光标移动方式

^: 移动到光标所在行的行首

$:移动到光标所在行的行尾

O: 移动到当前行的行首      

W:光标右移到下行的开头

b:移动到当前字的字首,如果已经处于字首的,则光标回到上个字的开头

e: 移动到当前字的字喂,如果已经处于字首的,则光标回到下个字的字尾

<n> w:右移n个字

<n> b:左移n个字

7.在页面间移动光标

Ctrl +b:向上翻一页

Ctrl +f:向下翻一页

Ctrl +U:向前翻半页

Ctrl +d:向后翻半页

H:将光标移动到当前屏幕的最上行的行首

xH: 将光标移动到当前屏幕的第x行

G:移动到文章的最后

):由游标所在位置至下一个句子的第一个字母

(:由游标所在位置至该句子的第一个字母

{:由游标所在位置至该段落的最后一个字母

}:由游标所在位置至该段落的第一个字母

8. 删除恢复字符或行

x:删除当前字符

nx:删除从光标开始的n个字符

dd:删除当前行

ndd:向下删除当前行在内的n行

u:撤销上一步操作

U:撤销对当前行的所有操作

9.搜索

/<pattern>:向光标以下搜索pattern字符串

?/ <pattern>:向光标以上搜索pattern字符串

10.设置行号

:set nu 显示行号

:set nonu 取消显示行号

:nu 取得光标所在行号

n+:向下跳n行

n-:向上跳n行

nG:跳到行号为n的行

11.复制和粘贴

yy:将当前行复制到缓存区,也可以使用ayy复制,其中a为缓冲区,a也可以替换为a到z的任意字符,可以完成多个复制任务

nyy: 将当前行下的n行复制到缓存区,也可以使用anyy复制,其中a为缓冲区,a也可以替换为a到z的任意字符,可以完成多个复制任务

yw:复制从光标开始到字尾的字符

nyw:复制从光标开始的n个字

y^:复制从光标到行首的内容

y$:复制从光标到行尾的内容

p:粘贴粘贴板里的内容到光标后,如果使用了前面的自定义缓冲区,建议使用ap进行粘贴

P:粘贴粘贴板里的内容到光标前,如果使用了前面的自定义缓冲区,建议使用ap进行粘贴

12.替换操作

:s/old/new 用new替换行中首次出现的old

:s/old/new/g 用new替换行中所有的old

:n,m s/old/new/g用new替换行中从n行到m行里所有的old

:%s/old/new/g用new替换当前文件里的old

13.文件格式转换

UNIX2dos 把Linux的行尾符号(^J)转换成DOS中是使用的(^M^J)

dos2UNIX 把Windows文档中的行尾符号转为(^J)

上一篇:shell语法之case


下一篇:玩玩负载均衡---在window与linux下配置nginx