一、3种模式
1.1 一般模式
以vim打开一个文件就直接进入一般模式了(默认)。在这种模式下,你可以使用上下左右按键来移动光标,你可以删除字符或删除整行,也可以复制、粘贴你的文件数据。
1.2 编辑模式
在一般模式中按下”i,I,o,O,a,A,r,R”任何一个字母后会进入编辑模式。通常在Linux中,按下这些按键时,在界面的左下方会出现INSERT或REPLACE的字样,此时才可以进行编辑。如果要回到一般模式时,则必须按下[Esc]这个按键即可退出编辑模式。
1.3 命令行模式
在一般模式中,输入”:,/,?”3个中的任何一个按键,就可以将光标移动到最下面那一行。在这个模式当中,可以提供你查找数据的操作,而读取、保存、大量替换字符、离开vim,显示行号等操作均是在此模式下完成。
二、常用按键及功能说明
2.1 一般模式按键
【移动】
① 最基本的上下左右不用多说,多次移动可以在按上下左右前先按一个整数即可移动相应的次数
② [Ctrl]+[f] 屏幕向下移动一页,相当于[Page Down]按键
③ [Ctrl]+[b] 屏幕向上移动一页,相当于[Page Up]按键
④ 0或[fn]+[←] 此为数字”0”,移动到这一行最前面字符处
⑤ $或[fn]+[→] 移动到这一行最后面字符处
⑥ G 移动到最后一行
⑦ nG n为数字,移动到第n行
⑧ gg 相当一1G
⑨ n[Enter] n为数字,光标向下移动n行
【删除、复制、粘贴】
① x,X x向后删除一个字符,X向前删除一个字符
② nx,nX n为数字,向后向前删除n个字符
③ dd 删除当前行
④ ndd n为数字,向下删除n行
⑤ yy 复制当前行
⑥ nyy n为数字,复制n行(向下)
⑦ p,P 粘贴,p为向下,P为向上
【重复与撤销】
① u 撤销上一个操作
② [Ctrl]+[r] 重复上一个操作
2.2 编辑模式
i,I,a,A,o,O进入插入模式,r,R进入替换模式,[Esc]返回一般模式。
2.3命令行模式
【查找与替换】
① /word 向下寻找一个名称为word的字符串
② ?word 向上寻找一个名称为word的字符串
③ n,N n为重复上一个查找,N为反向重复上一个查找
④ :n1,n2s/word1/word2/g n1,n2为数字。在n1和n2行之间寻找word1字符串并用word2替换。PS:n2可用”$”表示最后一行
⑤ :n1,n2s/word1/word2/g 作用同上,但执行前显示提示用户确认是否替换
【保存与离开】
① :w 保存写入
② :q 离开
③ :q! 修改过不保存离开
④ :wq 写入保存并离开
⑤ ZZ 保存离开
【其他】
① :set nu 设置行号
② :set nonu 取消设置行号
三、Vim的其他功能
3.1 块选择
当按下v或V或[Ctrl+[v]时,光标移动过的地方就会开始反白,上下左右可以移动光标,反白的地方表示被选中。
选中后按键d即可删除选中,按键y即可复制选中内容,然后可以用p,P去粘贴了。
3.2 多文件编辑
用”vim 文件1 文件2 …”可以打开多个文件进行编辑,这时要用到下面3个按键来切换与文件之间:
① :n 编辑下一个文件
② :N 编辑上一个文件
③ :files 列出目前这个vim打开的所有文件
3.3 多窗口模式
可以让多个文件同时在一个屏幕内显示,相应按键操作如下:
① :sp[filename] 打开一个新窗口,为filename文件
② [Ctrl]+[w]+[↑] 向上移动一个窗口
③ [Ctrl]+[w]+[↓] 向下移动一个窗口
基本上了解了这些将vim用于shell script编程是没什么问题了,如果要寻求更多个性化的配置与按键就自行去寻找相关资料学习吧,博主暂时就总结这么多了。