Linux学习——vim简要命令整理

在linux中,vim的应用占有巨大的分量。这里整理下常用的命令使用方便初学与平时查找。其实,大部分的工具掌握了20%的命令,基本能完成80%的场景。剩下的可以通过度娘补充。

状态控制

整体状态控制

Ctrl + s :停止终端输入
Ctrl + q : 恢复终端输入

编辑状态输入

一般模式(默认):一开始进入模式,不可编辑,可以移动光标,可以删除行,或者复制粘贴内容。

编辑模式 : 开启方法——按 i, I, o, O, a, A, r, R 进入
i:在光标停留处前添加内容
I:在光标所在行的行首开始插入 如果行首有空格则在空格之后插入
a:在光标停留处后添加内容
A:在光标所在行的行尾添加内容
s:删除光标所在内容,然后开始添加新内容
S:删除光标所在行并插入内容
o:光标所在行下一行添加内容
O:光标所在行的上一行插入内容

命令行模式:
开启方法——在一般模式下输入 : ,/ ,?任意一个
可以提供查找、读取、存盘、替换字符、离开vi、显示行号等的动作则是在此模式中完成的

移动按键

【pageUP】:上翻一页
【pageDown】:下翻一页

【home】:光标移动到行开头
【End】:光标移动到行结尾

【gg】 移动到这个文件的第一行
【G】 移动到这个文件的最后一行
【nG】移动到这个文件的第n行
【n+Enter键】光标向下移动n行
【n+空格键】: 光标移动几个空格

【H】:移动到当前屏幕最上方的那一行
【M】:移动到当前屏幕中间的那一行
【L】:移动到当前屏幕最下边的那一行

特殊键

【u】:撤销操作
【Ctrl+r】: 取消撤销操作
【.】 重复前一个操作
【Esc】:退出编辑模式,回到一般模式

搜查

【/寻找单词】:向光标下方寻找匹配的单词
【?寻找单词】:向光标上方寻找匹配的单词
【/寻找单词】+【n】:重复上一个查找动作(实际效果是跳到下一个搜索的单词的地方)
【/寻找单词】+【N】:反向重复上一个查找动作(实际效果是跳到上一个搜索的单词的地方)
注:【?寻找单词】的同理

替换

【:n1,n2s/被替换单词/替换单词/g】:在第n1与n2行中间替换单词

【:1,$s/被替换单词/替换单词/g】:全文搜索并替换

【:1,$s/被替换单词/替换单词/gc】:全文搜索并询问后替换

选择

【v】:字符选择,会将光标经过的地方反白选择
【V】:行选择,会将光标经过的行反白选择
【Ctrl+v】 块选择,可以用长方形的方式选择资料 (提制竖列)
【y】 将反白的地方复制
【d】 将反白的地方删除

删除

【del】/【x】:向后删除一个字符
【backspace】/【X】: 向前删除一个字符
【nx】:连续向后删除n个字符
【dd】: 删除光标所在行
【ndd】: 删除光标所在的向下n行
【d1G】:删除第一行到光标所在行中间的所有数据
【dG】: 删除光标所在到最后一行的所有数据,
ps:全部删除:按esc后,然后dG
【d$】: 删除光标所在处,到该行末的字符
【d0】: 删除光标所在处,到该行首的字符

复制

【yy】:复制光标所在的那一行
【nyy】:复制光标所在的向下n列
【y1G】: 复制第一行到光标所在行中间的所有数据
【yG】:复制光标所在行到最后一行的所有数据
【y$】 :复制光标所在处,到该行末的字符
【y0】 :复制光标所在处,到该行首的字符

粘贴

【p】:将已复制的数据在光标下一行粘贴上
【P】 :则为贴在光标的上一行

折叠与展开

【zi 】:打开关闭折叠
【zv】 :查看此行
【zm】 :关闭折叠
【zM】 :关闭所有
【zr】 打开
【zR 】打开所有
【zc 】折叠当前行
【zo】 打开当前折叠
【zd】 删除折叠
【zD】 删除所有折叠

多文件切换

【:bn】:下一个文件
【:bp】:上一个文件

多窗口切换

【:split】:水平分割窗口
【 :vsplit】:垂直分割
【Ctrl+w+方向键】:切换到不同窗格

行号

【:set nu】:显示行号
【:set nonu】: 与 set nu 相反,为取消行

格式化代码

(1) gg=G 是一个自动缩进的命令 (在命令状态下直接输入,不需要输入冒号),gg是文件首,G是文件尾,所以 gg=G 是整理全部代码。
(2) == 整理当行,加行数整理多行。
(3) ={ 或者 =i{ 整理一个代码块。
(4) mG=nG 当 m 不等于 n 的时候能完成从 m 行到 n 行的段落缩进。(或者按V选中行数后使用【<】或【>】进行缩进)

刷新当前文件

【:e】:刷新当前文件

保存

【:w】 :保存编辑的内容
【:w!】:强制写入该文件,但跟你对该文件的权限有关
【:q】 :离开vim
【:q!】 :不想保存修改强制离开
【:wq】 :保存后离开
【:x】 :保存后离开
【ZZ】 :若文件没有更动,则不保存离开,若文件已经被更改过,则保存后离开
【:w filename】: 将编辑的数据保存成另一个文件(类似另存)

插入文件

【:r filename】:在编辑的数据中,读入另一个文件的数据。即将【filename】 这个文件的内容加到光标所在行后面。
【:n1,n2 w filename】:将n1到n2的内容保存成filename这个文件。
【:! command】:暂时离开vi 到命令行模式下执行command的显示结果!例如 【:! ls /home】即可在 vi 当中察看/home底下以ls输出的文件信息!

打开时出现意外

1、可能有其他人或程序同时在编辑这个文件:
2、在前一个vim的环境中,可能因为某些不知名原因导致vim中断 (crashed):

右下角会出现六个命令项,其作用说明如下:
(O)pen Read-Only:打开此文件成为只读档, 可以用在你只是想要查阅该文件内容并不想要进行编辑行为时。一般来说,在上课时,如果你是登入到同学的计算机去看他的配置文件, 结果发现其实同学他自己也在编辑时,可以使用这个模式;

(E)dit anyway:还是用正常的方式打开你要编辑的那个文件, 并不会载入暂存盘的内容。如果说两个人都在编辑这个文件的话,很容易出现互相改变对方的文件等问题

®ecover:就是加载暂存盘的内容,用在你要救回之前未保存的工作。 不过当你救回来并且储存离开vim后,还是要手动自行删除那个暂存档。

(D)elete it:你确定那个暂存档是无用的!那么开启文件前会先将这个暂存盘删除

(Q)uit:按下 q 就离开vim,不会进行任何动作回到命令提示字符。

(A)bort:忽略这个编辑行为,感觉上与 quit 非常类似!

简单vim初始设定值

路径:/etc/vimrc 一般是在 ~/.vimrc中保存修改

:set nu 设置行号
:set nonu 取消行号
:set hlsearch 设置高亮度查找
:set nohlsearch 取消高亮度查找
:set backup 自动备份文件
:set
ruler 开启右下角状态栏说明
:set showmode 显示左下角的INSERT之类的状态栏
:set backspace={0,1,2} 设置退格键功能。为2时可以删任意字符。为0或1时仅可以删除刚才输入的字符。
:set all 显示目前所有的环境参数值
:set 显示与系统默认值不同的参数值
:syntax on/off 是否开启依据相关程序语法显示不同的颜色
:set bg=dark/light 是否显示不同的颜色色调
:set nu ru ai si ts=4 sw=4 设置缩进和行号
:set equalprg=indent 用indent程序处理等号命令,indent默认是gnu风格。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值