Vim常用命令:
(1) 跳转命令
h,I,j,k: 分别将光标左移,下移,右移,上移
b (begin): 跳转到当前单词前面
e(end): 跳转到当前单词后面
gg: 跳转到文件的第一行
G: 跳转到文件的最后一行
H(head): 移动到屏幕的第一行
M: 移动到屏幕中间
L: 移动到屏幕的最后一行
跳到行首: shift+i 行尾: shift+a 变成插入状态
跳到行首 shift+^ 行尾:shift+$ 不变成插入状态
3+shift+$ 移动到当前行的下面3行的行尾,包括本行,所以实际移动了2行
ctrl+O 调转到光标删上一次停留的位置
ctrl+I 调转到光标删上一次停留的位置
ctrl + f(forward) 向后翻一屏,
ctrl + b(backword) 向前翻一屏,
ctrl + d (down)向后翻半屏
ctrl + u(down) 向前翻半屏
(2) 插入命令
a:在当前字符的后面变成插入状态
i: 在当前字符的前面变成插入状态
A:在当前行的行尾,并转为插入状态
o:在当前行的下一行插入一个空白行
O:在当前行的上一行插入一个空白行
(3) 查找和替换命令
/string string为要查找的字符串 n从前往后翻 N 从后往前
r:替换光标处字符,一次替换一个字符,使用方法:r+要替换成的新字符
:%s/old/new/g 全文替换指定字符串,old为需要替换的关键词。
:n1,n2s/old/new/g 在一定范围内替换指定字符串
- 替换光标所在字符串:
s/旧的字符串/新的字符串
- 替换光标所在字符串所在行所有字符串:
s/旧的字符串/新的字符串/g
- 替换一个范围:
起始行号,结尾行号s/旧的字符串/新的字符串/g
行数范围内所有的旧字符替换为新的字符 - 全局替换:
%s/旧的字符串/新的/g
- 所有替换命令后加
c
,添加提示
(4) 撤销上一次操作命令
u:撤销最近的操作
ctrl+r:取消插销操作
(5) 复制命令
yy,Y 复制当前行
nyy,nY 复制n行
dd 剪切当前行,ndd剪切当前行及一下的n行
p 粘贴在当前行下
P[大写] 粘贴在当前行上
yw 复制一个单词
(6)删除命令
x:删除光标当前字符
X:删除光标前面的那个字符
de: 删除本单词
dw: 删除到下一个单词开头
db:删除前一个单词
dd:删除一行
ndd:删除n行
D d$ 删除光标位置到本行结尾
d0:删除光标位置到本行开头
其它
v:选择 可用来复制
ctrl+v 一次可以选择多行
1. 查看当前正在编辑文件名 :ar
2. 在当前文件中执行shell命令 :!pwd :!ls等
3. 垂直分割屏幕
(1) :vsplit 后不加文件名 即把当前文件分割成两份,在左右两个屏幕打开,两边同步修改
(2) :vsplit newfile文件名 当前文件+newfile在左右两个屏幕打开,可分别修改两个文件
分屏之后,在不同屏幕之间切换 ctrl+w后再按一次w就可以在不同屏幕之间切换
分屏之后,如果要关闭某个屏幕,用命令 :close 后 :q都可
wc -l : 统计文档的行数
sed -n '1,100p' 文件名 :读取文件中特定行(这里是1-100行,将要读取的行替换相应数字即可)
awk '{print $2}'文件1 > 文件2 : shell命令,用于读取一行中的某一列,列与列之间是用空格分开
Shell快捷键
1. 一次跳过一个单词
移动命令:
Ctrl +a 移动到命令行开始
Ctrl +e 移动到命令行末尾
ctrl+f 向后移动一个字符
ctrl+b 向前移动一个字符
ctrl+右方向键 向右移动一个单词
ctrl+左方向键 向左移动一个单词
ESC+b 左移一个单词
ESC+f 右移一个单词
撤销前一个操作
ctrl+shift+_ 或 ctrl+?
编辑命令:
ctrl+d删除光标所在处字符
ctrl+h删除光标所在处前一个字符
ctrl+w删除光标前面的单词
ESC+d 删除光标后的单词
ctrl +l 清除屏幕内容
ctrl +u 清除剪切光标之前的内容
ctrl +k 剪切清除光标之后的内容
ctrl +y 粘贴ctrl+u或ctrl+k剪切的内容
2. 在两个目录之间切换
cd –
查看文件大小 显示文件单位
ll -h
查看当前目录下各个子目录大小
du -h --max-depth=1