【笔记】Vim的操作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了【笔记】Vim的操作相关的知识,希望对你有一定的参考价值。
参考技术A 刚打开文件时Vim处于命令模式,此时文件的下方会显示文件的一些信息,包括文件的总行数和字符数,以及当前光标所在的位置等。例如,要将某文件中所有的"root"替换为"liudehua",则有两种输入命令,分别为:
注意,被删除的内容并没有真正删除,都放在了剪贴板中。将光标移动到指定位置处,按下 "p"键,就可以将刚才删除的内容又粘贴到此处。
某些情况下,可能需要把两行进行连接。比如说,下面的文件中有两行文本,现在需要将其合并成一行(实际上就是将两行间的换行符去掉)。可以直接在命令模式中按"J"键。
Vim的保存和退出是在编辑模式中进行的。
需要注意的是,"w!"和"wq!"等类似的指令,通常用于对文件没有写权限的时候(显示 readonly,如图12所示),但如果你是文件的所有者或者root用户,就可以强制执行。
程序员在编辑程序时,经常会为将光标移动到与一个 "(" 匹配的 ")" (对于 [] 和 也是一样的)处而感到头疼。Vim里面提供了一个非常方便地査找匹配括号的命令,这就是 "%"。
在编辑文件时,可以使用Vim同时打开两个文件,每个文件分别占用一个窗口。
例如,在査看 /etc/passwd 时需要参考 /etc/shadow,有两种办法可以实现:
连续行的注释其实可以用替换命令来完成。换句话说,在指定范围行加"#"注释,可以使用 ":起始行,终止行 s/^/#/g",例如:
取消连续行注释,则可以使用":起始行,终止行s/^#//g",例如:
添加"//"注释要稍微麻烦一些,命令格式为":起始行,终止行 s/^////g"。例如:
以上方法可以解决连续行的注释问题,如果是非连续的多行就不灵了,这时我们可以定义快捷键简化操作。格式如下:
在命令模式下输入":set nu"即可显示每一行的行号,如果想要取消行号,则再次输入":set nonu"即可。
如果希望每次打开文件都默认显示行号,则可以编辑Vim的配置文件。每次使用Vim 打开文件时,Vim 都会到当前登录用户的宿主目录(用户配置文件所在地)中读取 .vimrc 文件,此文件可以对 Vim 进行一些默认配置设定。
Vim 配置文件分为系统配置文件和用户配置文件:
vim学习笔记——vim操作
仅记录一些自己最经常使用的vim操作。随时更新
文本操作
- d 剪切。双击剪切一行
- y 复制,双击复制一行
p 粘贴
x 删除当前光标下字符
r 替换当前光标字符。后面接替换的字符
:s/old/new/g 全局替换old为new
移动
- 0 移动到开头
- $ 移动到结尾
- w 移动到下一个单词开头
e 移动到下一个单词结尾
fx 移动到本行之后第一个出现x字母的位置
tx 移动到本行之后第一个出现x字母的前一个位置
gg 跳到文件首
- G 跳到文件尾
NG 移动到第N行,或者用:N也可
{ 上一段。}下一段
% 跳到匹配的括号处
ctrl+o 上一个位置
- ctrl+i 下一个位置
文本移动和操作相互配合使用。比方d$+enter删除到行末,dw删除至下一个单词,2dd删除接下来两行
也能够和数字相互使用,比方y+enter5,复制下面5行,:1,20d+enter删除1~20行
模式切换
插入模式
- i 进入插入模式。当前插入光标位置插入
- a 进入插入模式,下一个光标位置插入
- o 进入插入模式,在当前行下一行插入
- O 进入插入模式。在当前行上一行插入
可配置vim成鼠标光标定位模式
可视化模式
- :v 进入可视化模式
替换模式
- :R 进入替换模式
使用外部命令
- :! 在!后加入外部命令
查找
- :/ 在/后加入要查找的内容
进入查找时。按n查找下一个,N查找上一个
文件操作
保存文件
- :w 保存
- :saveas filename 另存为
退出
- :q
保存退出vim
vim中保存退出:x和:wq的差别。例如以下:
:wq和ZZ 强制性写入文件并退出(存盘并退出 write%quite)。即使文件没有被改动也强制写入。并更新文件的改动时间。
:x 写入文件并退出。仅当文件被改动时才写入,并更新文件改动时间。否则不会更新文件改动时间。
这两者普通情况下没什么不一样,可是在编程方面,对编辑源文件可能会产生重要影响。由于文件即使没有改动,”:wq”强制更新文件的改动时间。这样会让make编译整个项目时以为文件被改动过了。然后就得又一次编译链接生成可运行文件。
这可能会产生让人误解的后果。当然也产生了不必要的系统资源花销。
操作回退和重做
- u 撤销上一个改动
- U 撤销本行所做的改动过
- ctrl+r 重做操作
其它
- ctrl+g 显示当前文件信息
- ctrl+d 补全命令
參考资料:
以上是关于【笔记】Vim的操作的主要内容,如果未能解决你的问题,请参考以下文章