目前学习使用Linux的vi,记录学习使用中遇到的问题及常使用的命令。
1、撤销操作 u
2、向文件尾翻半屏 Ctrl+d,向文件首翻半屏 Ctrl+u
3、向文件尾翻一屏 Ctrl+f,向文件首翻一屏 Ctrl+b
4、删到行首 do,删到行尾 d$
5、 在同一方向重复上一次搜索命令 n, 在反方向上重复上一次搜索命令 N
6、u撤销上一步操作,U撤销对当前行的所有操作
7、nG 跳到行号为n的行
8、多窗口编辑文件
命令行模式下“:sp filename”,上下屏显示文件;“:vsp filename”左右屏显示文件;
把光标移到右边的屏。Ctrl+W l
把光标移到左边的屏中。Ctrl+W h
把光标移到上边的屏中。Ctrl+W k
把光标移到下边的屏中。Ctrl+W j
把光标移到下一个的屏中。Ctrl+W w
9、跳到指定行
在编辑模式下ngg或nG,n为行号;在命令模式下:n;打开文件就跳转vim +n filename;
跳到行首 0或^ 符号;
跳到行尾 $
10、删除
dd 删除光标所在行
dw 删除一个字(word)
x 删除当前字符
X 删除前一个字符
D 删除到行末
11、复制、粘贴、撤销
yy 复制一行,此命令前可跟数字,标识复制多行,如6yy,表示从当前行开始复制6行
yw 复制一个字
y$ 复制到行末
p 粘贴粘贴板的内容到当前行的下面
P 粘贴粘贴板的内容到当前行的上面
]p 有缩进的粘贴,vim会自动调节代码的缩进
u 撤销
ctrl+r 撤销的撤销(相当于window的ctrl+y)
*y或+y是复制到系统剪切板
*p或+p是从系统剪切板粘贴
12、替换
vi/vim 中可以使用 :s 命令来替换字符串。
:s/vivian/sky/ 替换当前行第一个 vivian 为 sky
:s/vivian/sky/g 替换当前行所有 vivian 为 sky
:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
n 为数字,若 n 为 .,表示从当前行开始到最后一行
:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky
:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky
可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/
:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/