Linux下Vim工具常用命令

简介: 原文地址: http://www.cnblogs.com/lizhenghn/p/3675011.html 在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用。作为一个新手,我也是刚刚接触,本节将我日常使用或收集的Vim常用命令记录下来。

原文地址: http://www.cnblogs.com/lizhenghn/p/3675011.html

在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用。作为一个新手,我也是刚刚接触,本节将我日常使用或收集的Vim常用命令记录下来。

当然,直接在命令行上输入:vimtutor,就可以学习到Vim的所有命令了。Vim很强大,很多牛人在vim里集成很多插件什么的,但这里只介绍基本vim命令。

移动命令

复制代码
h      "
j      "
k      "
l      "
w      "光标移动到下一个单词的首字符 a word forward
b      "光标移动到上一个单词的首字符
e      "光标移动到下一个单词的尾字符
ge     "光标移动到上一个单词的尾字符
$      "将光标移动到当前行行尾
^      "将光标移动到当前行第一个非空白字符
0      "将光标移动到当前行第一个字符
复制代码

 注:  这些命令除了'0'命令以外都可以在前面接受一个记数,2$;上面所有命令都可以在前面接受一些操作命令,如d$,dw等。

修改命令

复制代码
x        "删除一个字符
d        "其后跟任何一个位移命令,将删除从当前光标到位移终点处的文本
         "内容,如dw,delete word                          
c        "与d命令功能类似,不同的在执行完删除后命令进去Insert模式,change 
dd       "删除一整行
yy       "复制一整行
p        "把剪贴板内容粘帖到当前位置
vimdiff 1.c 2.c "创建一个垂直分割窗口比较这两个文件不同的地方
复制代码

 搜索命令

f<a>     "单字符搜索,fa是在当前行搜索下一个a,find a
/string  "全文本搜索一个字符串,如要找到单词"func"则用/func
         "如果文本有多个func,按下n就会移动到接下来的func位置上
         "n前面也可以接受数字计数,如3n,就会找紧接第三个func 
?string  "与/string的功能相同,唯一的区别就是搜索的方向相反

 注:

  1. 可以用:set noingorecase 忽略字符大小写;
  2. /和?命令都有记忆功能,可以用多次<UP>键选择搜索历史,记录命令最大的历史条数可以在会话viminfo上更改;
  3. 搜索字符.*/?%$^[]等特殊字符要在前面加一个反斜杠转意;
  4. 搜索到孤立的单词,也就是前后都没有其他字符的(除了空格,制表符),如只搜the,不想搜到there或whether这样的,要用/\<the\>;
  5. 可以用:set hlsearch把要搜索的单词高亮显示;

定位命令

复制代码
G      "光标移动到文件的最后一行,或者Shift+G
15G    "光标移动到文件的第15行,或者15gg
gg     "光标移动到文件的第一行 
45%    "光标移动到文件45%处
H      "光标移动到当前屏幕的最开始
M      "光标移动到当前屏幕的中间
L      "光标移动到当前屏幕的最后
复制代码

 注:  CTRL+g查看当前光标位置

滚屏命令

复制代码
CTRL+U  "窗口向上滚半屏
CTRL+D  "窗口向下滚半屏
CTRL+E  "向上滚一行,没太大实际意义
CTRL+Y  "向下滚一行
CTRL+F  "向前滚一整屏
CTRL+B  "向后滚一整屏
zz      "当前行置于屏幕中央
zt      "当前行置于屏幕顶端
zb      "当前行置于屏幕底端
复制代码

 分割窗口

复制代码
:split    "横着分割
:new      "横着添加一个新窗口
:vsplit   "竖着分割
:vnew     "竖着添加新窗口
CRTL+W w  "按顺序切换小窗口
:qall     "关闭所有窗口
:wall     "保存所有窗口
复制代码

 签(tab)命令

:tabedit filename "在正在编辑的vim窗口建一个叫filename的tab页
:tab split "新建一个tab页
gt         "移动到下一个tab页
gT         "移动到下一个tab页

 

暂时就这么多了,以后学习到新的命令了还会持续更新的。

另外高级的Vim命令请参考:

简明 Vim 练级攻略

无插件Vim编程技巧

目录
相关文章
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
78 8
|
12天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
40 14
Linux 10 个“who”命令示例
|
1天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
39 20
|
1天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
20 7
|
21天前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
31 9
|
19天前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
25天前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
95 3
|
1月前
|
存储 运维 Linux
如何在 Linux 系统中使用 envsubst 命令替换环境变量?
`envsubst` 是 Linux 系统中用于替换文本中环境变量值的实用工具。本文分三部分介绍其工作原理、使用方法及实际应用,包括配置文件替换、脚本执行中环境变量替换和动态生成文件等场景,帮助用户高效利用 `envsubst` 进行开发和运维工作。
50 4
|
28天前
|
Linux
在 Linux 系统中,`find` 命令
在 Linux 系统中,`find` 命令
30 1
|
4月前
|
Unix Linux 开发工具
在Linux中,有哪些基本的 Vim 命令?
在Linux中,有哪些基本的 Vim 命令?