linux学习三:vim

vi和vim

vim是vi的增强版,只要是linux系统就有vi。

centos7默认没有vim命令,需要自己装:yum install vim -y

命令模式

vim刚进去,进入命令模式,可以使用各种快捷键。

快捷键

hjkl:左下上右

# 删除
x, X    在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X 为向前删除一个字符(相当于 [backspace] 亦即是退格键) (常用)
nx  n 为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10 个字符, 『10x』。
dd: 删除游标所在的那一整行(常用)
ndd: n为数字,删除光标所在的向下 n 行,例如:20dd 则是删除20行(常用)
c: 重复删除多个数据,例如向下删除 10 行,[ 10cj ]
d$: 删除游标所在处,到该行的最后一个字符,跟 D 一样。
D: 删除光标后面的所有
d^: 删除游标所在处,到该行的第一个字符
d1G: 删除光标到第一行的之间的行,注意 G必须是大写
dG: 删除光标到最后一行之间的行,注意 G 必须是大写
d0: 那个是数字的 0 ,删除游标所在处,到该行的最前面一个字符

# 复制粘贴撤销复原
yy: 复制游标所在的那一行
nyy: 复制游标向下n行,例如20yy则是向下复制20行
y0: 复制光标所在的那个字符到该行行首的所有数据
y$: 复制光标所在的那个字符到该行行尾的所有数据]
p: 粘贴复制的的那一行到下一行(常用)
P: 贴在游标上一行(常用)
u: 撤销
ctrl+r: 复原,跟u相对应
.: 不要怀疑!这就是小数点!意思是重复前一个动作的意思。 如果你想要重复删除、重复贴上等等动作,按下小数点『.』就好了! (常用)
J   将光标所在行与下一行的数据结合成同一行

# 光标移动
G: 跳到最后一行
gg: 跳到首行
$: 跳到光标所在行尾
^: 跳到光标所在行首
E: 单词间的移动
H:  =shift+h,光标移动到这个屏幕的最上方那一行的第一个字符
M   光标移动到这个屏幕的中央那一行的第一个字符
L   光标移动到这个屏幕的最下方那一行的第一个字符
n+shift+g: 跳到指定行,例如:120+shift+g 跳到第 120 行
ctrl+f: 相当于PgDown,向下翻页
ctrl+b: 相当于PgUp,向上翻页
ctrl+d/u: 向下/向上移动半页
0 或功能键[Home]: 这是数字『 0 』:移动到这一行的最前面字符处 (常用) 相关快捷键:d0,y0
$ 或功能键[End] 移动到这一行的最后面字符处(常用)  相关快捷键:d$, y$

# 查找
 /word: 向光标之下查找为 word 的字符串
 ?word: 向光标之上查找为 word 的字符串
 n:执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。如果是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串!
 N:这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。 例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird 。

编辑模式

命令模式中按 'i',进入编辑模式。按 ESC 退出到命令模式。

快捷键

Home: 跳到行首
End: 跳到行末
Backspace: 删除光标前面的字符
Del: 删除光标后面的字符
PgUp: 向上翻页
PgDn: 向下翻页
a, A    进入插入模式(Insert mode):a 为『从目前光标所在的下一个字符处开始插入』, A 为『从光标所在行的最后一个字符处开始插入』。(常用)set
o, O    进入插入模式(Insert mode):这是英文字母 o 的大小写。o 为『在目前光标所在的下一行处插入新的一行』; O 为在目前光标所在处的上一行插入新的一行!(常用)
r, R    进入取代模式(Replace mode):r 只会取代光标所在的那一个字符一次;R会一直取代光标所在的文字,直到按下 ESC 为止;(常用)

底行模式

命令模式中按 ':' ,进入底行模式。按 ESC 退出到命令模式。

快捷命令:

 :set nu: 显示行号
 :set nonu: 隐藏行号
 :w [filename]: 将当前修改保存为新文件
 :r [filename]  在编辑的数据中,读入另一个档案的数据。亦即将『filename』 这个档案内容加到游标所在行后面
 :n1,n2 w [filename]    将 n1 到 n2 的内容储存成 filename 这个档案。
 
 替换
 :n1,n2s/word1/word2/g  n1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2 !举例来说,在 100 到 200 行之间搜寻 vbird 并取代为 VBIRD 则:『:100,200s/vbird/VBIRD/g』。(常用)
 :1,$s/word1/word2/g    从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !(常用)
 :1,$s/word1/word2/gc   从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给用户确认 (confirm) 是否需要取代!(常用)

猜你喜欢

转载自www.cnblogs.com/KbMan/p/12416325.html
今日推荐