之前做Linux实验的时候重装了一个新的Linux,这次想偷懒就没用vscode而是直接用起vi写,一开始还有点不习惯,多操作几次把常用命令掌握了就差不多了
其实不一定要背下来,写下来然后要用的时候复习一下就可以了。
稍微总结一下自己常用的vi命令:
1、打开命令:
vi [filename] (一定要加文件名):打开[filename]文件
2、退出命令:
:q :退出而且不保存修改的内容
:q! :强制退出不保存修改的内容
:wq :退出并且保存修改的内容
:wq! :强制保存修改的内容然后退出(修改了只读文件会用到)
ZZ :退出并且保存修改的内容,相当于:wq,看个人习惯
3、光标移动命令
上下左右方向键:移动光标,
看别人字母 h (左) ,j (下), k(上),l(右)才是正统的不过顺手就行
^ :光标移到行首
$ :光标移到行尾
shift+g:光标移动到文件最后一行
gg :光标移动到文件第一行
4、控制命令
打开一个内容很多的文件的时候经常用到。
Ctrl+d:向下滚半屏
Ctrl+u:向上滚半屏
Ctrl+f :向下滚全屏
Ctrl+b:向上滚全屏
5、编辑命令
主要是进入编辑状态,也就是insert状态
i:光标当前位置开始编辑
o:光标的下一行开始编辑
shift+o:光标的上一行开始编辑
6、删除命令
dd:删除一行,可以带个数字,如6dd,表示向下删除6行
d$:删除光标到行尾的内容(也可以使用ctrl+d)
d^:删除光标到行首的内容
x:删除光标位置的字符(向后删除)
shift+x:删除光标位置的字符(向前删除)
7、替换命令
r:按esc退出insert状态再按个r,然后再输入一个字符,将会替换光标位置的字符
R:跟r一样,只不过是可以替换多个字符
:s/aa/bb/g:替换当前行的所有aa将会变成bb
:%s/aa/bb/g:替换整个文件的,所有aa将会变成bb
:n1,n2s/aa/bb/g:替换n1到n2行之间所有的aa变成bb
8、查找命令
/String:查找一个字符串(向下开始)
?String:查找一个字符串(向上开始)
n:向后查找下一个
shift+n:向前查找下一个
9、粘贴复制命令
yw:复制一个单词
yy:复制一行,和删除dd一样可以带个数字,6yy复制六行(向下复制6行)
p:粘贴到光标位置的下一行
shift+p:粘贴到光标位置的上一行
10、同时打开两个文件
比如:aa.txt ss.txt
打开第一个文件vi aa.txt然后输入下面的命令
:sp ss.txt:此时就在同一个窗口打开另外一个ss.txt
Ctrl+w:进行两个文件上下窗口切换(需要再按上下方向键)
11、其他常用命令
:e!:重新加载文件,再查看日志文件的时候可以用,不断在变化的文件。
shift+j:将下一行拼接到上一行
u:撤销
:set nu:显示行号
:n:跳转到第n行(按回车才会跳)
Ctrl+g:会在显示屏的底部显示文件名字和总的行数,当前光标的位置行号
~:这个将会改变光标位置的字符的大小写