首页 Linux命令系列4:vim
文章
取消

Linux命令系列4:vim

设置行号

1
:set nu

跳到文件头和文末结尾

gg : 跳转到文件头 Shift+g : 跳转到文件末尾

清空整个文件内容

首先,使用gg调整光标到首行,然后使用dG命令即可。

全局替换

1
2
3
4
:[addr]s/源字符串/目的字符串/[option]  #s表示替换操作
如:
:%s/源字符串/目的字符串/c
:%s/源字符串/目的字符串/g

[addr] 表示检索范围:

如:“1,20” :表示从第1行到20行;

“%” :表示整个文件,同“1,$”;

“. ,$” :从当前行到文件尾;

[option] : 表示操作类型,如:

g 表示全局替换;

c 表示进行确认

p 表示替代结果逐行显示(Ctrl + L恢复屏幕);

省略option时仅对每行第一个匹配串进行替换;

如果在源字符串和目的字符串中出现特殊字符,需要用”\”转义

乱码

查看文件编码格式

1
:set fileencoding

先检查ssh工具的终端编码格式,不行再编辑~/.vimrc文件,没有就新建该文件,加上如下几行:

1
2
3
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
set termencoding=utf-8
set encoding=utf-8

执行脚本出现 bad interpreter

bad interpreter: No such file or directory

很有可能是你的脚本文件是DOS格式的, 即每一行的行尾以\r\n来标识

1
2
vim filename 
:set ff? 

可以看到dos或unix的字样. 如果的确是dos格式的, 那么你可以用:set ff=unix把它强制为unix格式的, 然后存盘退出. 再运行一遍.

批量注释

1
2
3
4
5
6
1. 按 ESC 进入 Normal 模式,移动游标定位到 12 行的位置。
2. 按 ctrl+v 即进入纵向编辑模式。
3. 多次按 j 定位到 23 行(结束位置)。
4. 按 I(大写的 i) 进入首行插入模式。
5. 按 # 号注释配置项,这时首行会被注释掉。
6. 在按 ESC 退出纵向编辑模式的同时所有选中的字符前都加了注释,需要等待 1-2 秒才能看到效果。

批量删除注释

Normal模式->ctrl+v进入列编辑模式->上下箭头选中内容->d删除->:wq保存即可

批量删除多行

1
2
3
1.首先在命令模式下,输入“:set nu”显示行号;
2.通过行号确定你要删除的行;
3.命令输入“:32,65d”,回车键,32-65行就被删除了

如果无意中删除错了,可以使用‘u’键恢复

本文由作者按照 CC BY 4.0 进行授权