Linux-Vim使用技巧

cd /tmp 切换到/tmp目录下面
vim shijiazhuang.txt 编辑shijiazhuang.txt文件 welcome to shijiazhuang.
yu hua qu
chang an qu
xin hua qu
xiao xi qu
kai fa qu
jing xing kuang qu
luan cheng qu
zheng ding qu <esc>
ZZ
cat shijiazhuang.txt 查看shijiazhuang.txt文件

vim chengshi.txt 编辑chengshi.txt文件
shi jia zhuang
bei jing
tian jin
<ESC>
ZZ

vim shijiazhuang.txt 编辑shijiazhuang.txt文件,移动到最后一行(最后一行的任意位置都可以,按键盘"o",会在下面插入一空行(插入模式))

按"ESC",回到命令模式

输入":r /tmp/chengshi.txt"回车,导入/tmp/chengshi.txt文件内容到上图的光标处下面(:r 文件名 导入一个文件内容到当前vim编辑器所编辑的文件里)

在vim编辑器中,能够执行一个命令
输入":!which ls",查看ls命令所在的目录

注意:回车之后,刚才键入的":!which ls"结果信息将会丢失。
输入":!date",查看命令date的结果

注意:回车之后,刚才键入的":!date"结果信息将会丢失。
如果需要将刚才输入的命令结果添加到vim编辑器中,而不是在回车之后信息就丢失了,可以输入":r !date",将命令结果导入到vim编辑器中

如果需要给某一行添加“#”号(相当于给某一行添加注释),有三种方法:
1、需要将光标移动到第二行的行首,然后输入"i","#","ESC";
2、移动到第三行的任意位置,然后输入"0","i","0","ESC";
3、移动到第四行的任意位置,然后输入"I","0","ESC"。

我们还可以使用自定义快捷键的方式给某一行添加注释,例如使用“ctrl+p”快捷键自动给某一行添加注释,我们需要输入":map (ctrl+v+p) ^P",如图:
,注意^P是变颜色的,直接输入ctrl+^+p是不会变颜色的。下面是一个完整的自定义创建行注释的快捷键方法
输入":map (ctrl+v+p) ^P I#<ESC>"回车 I表示移动光标到行首并进入插入模式,#表示插入#字符,<ESC>表示回到命令模式
回车结束创建
将光标移动到第五行(可以是第五行的任意位置),按ctrl+p,将会自动在这一行的第一个字符处添加"#"字符,表示给这一行添加注释。

我们还可以使用自定义快捷键的方式给某一行删除注释,例如使用"ctrl+b"删除某一行的注释,我们需要
输入":map (ctrl+v+b) 0x"回车 0表示将光标移动到某一行的行首位置还是命令模式,x表示在命令模式下将光标所在处的一个字符删掉,注意此时的操作都是在命令模式下执行的,所以不需要在写<ESC>了。

将光标移动到第二行(可以使任意位置),按"ctrl+b"删除当前行的注释,即删除当前行的第一个字符。

定义"ctrl+H"添加邮箱地址的快捷键操作
:map (ctrl+v+h)^H iwangyunpeng@shuaige.com<ESC>回车 i表示在光标所在字符前插入(进入插入模式),wangyunpeng@shuaige.com表示要插入的字符,<ESC>表示回到命令模式

在第十行行首处输入"ctrl+h"插入邮箱地址

如果想注释多行,我们先需要显示vim编辑器的行号
输入":set nu"回车显示行号

输入:,9s/^/#/g 其中/表示分割的意思,^表示行首,#表示替换的字符为"#"号,(注意:由于第一个/后面只有一个字符^,而它后面又没有跟着要替换的任何字符,所以当执行替换#字符时表示将行首的空字符替换为#字符,即实现在行首插入#字符的结果),g表示替换时不需要确认操作

回车之后,就会将第六行到第九行给注释起来了

如果需要将第六行到第九行的注释给去掉可以
输入:,9s/^#//g 其中/表示分割的意思,其中^表示行首,#表示将#字符进行替换(^#表示将指定行范围内的行首#字符进行替换,如果不加^表示需要将指定行范围内的所有#字符进行替换),第二个/后面没有字符表示空字符即替换后的字符为空字符,g表示替换时不需要确认操作

回车之后,就会将第六行到第九行给注释给删除了

我们将第三行到第五行中间加入一个或多个"#"字符,

输入:,5s/#//g 其中/表示分割的意思,其中#表示将#字符进行替换,第二个/后面没有字符表示空字符即替换后的字符为空字符,g表示替换时不需要确认操作

回车之后,将会把第三行到第五行之间的所有"#"字符替换为空字符

如果需要在行首增加“//”开头的注释信息,比如java代码的注释“//”,我们需要
输入:3,5s/^/\/\//g 其中/表示分割的意思,第一个/后面的字符表示要替换的字符(^表示行首),第二个/后面的字符表示替换为的字符(\/表示/字符、\/表示/字符,其中\表示转义字符),g表示替换时不需要确认操作

回车之后,就会将第三行到第五行的行首位置增加"//"字符

自定义字符或者单词的替换,例如:
输入:ab myname wangyunpeng 定义输入myname时替换wangyunpeng

在vim编辑器中文件的最后一行输入"O",它表示将会在此行的下面插入一行,然后输入myname

回车或空格之后,myname就会变成wangyunpeng

如果你需要将刚才的设置保存起来,下次启动linux能保存刚才的设置,需要将刚才的设置保存到用户的宿主文件中去,需要知道用户的宿主文件所在的目录在哪里,如果是root就在/root目录下面,如果是普通用户wangyunpeng,就在/home/wangyunpeng目录下面,必须我们需要给root创建配置文件
vim /root/.vimrc 在/root目录下面创建.vimrc的文件,注意这里面只能设置编辑模式下的命令

比如,定义三个快捷键,注意这里不需要使用":"开头


vim /tmp/shijiazhuang.txt 使用vim打开编辑shijiazhuang.txt文件会自动加上行号

如果是普通用户,例如wangyunpeng需要在/home/wangyunpeng目录下面创建.vimrc文件,而root用户只需要在/root目录下面创建.vimrc文件就可以了。
Linux-Vim使用技巧的更多相关文章
- linux vim操作技巧
安装: NERDTree 从 http://www.vim.org/scripts/script.php?script_id=1658 下载 unzip NERD_tree.zip cd ~/.vi ...
- Linux vim 操作技巧
·Linux设计的重要原则是信息存储在基于文本的文件中 文本文件:无格式文件,作用类似于win的注册表(etc下的配置文件,.conf或者无扩展名)可扩展标记语言(XML),文本标记定义数据结构(et ...
- Linux系统配置VI或VIM的技巧
Linux系统配置VI或VIM的技巧作者:IT专家网论坛出处:IT专家网论坛2008-10-28 11:08配置VI和VIM的颜色显示,使它能够高亮度显示一些特别的单词,这对编写程序很有用⋯⋯ 1.V ...
- Vim 常用技巧:
Vim 常用技巧: 将回车由默认的8个空格改为4个空格: 命令:set sw=4 修改tab为4空格: 命令:set ts=4 设置每一级的缩进长度: 命令:set shiftwidth=4 设置文件 ...
- vim常用技巧
# vim常用技巧 ## 行操作------------------------------ 行首 0- 行尾 $- 第一个非空字符 ^ ## 列编辑模式----------------------- ...
- [No0000192]Vim打开和保存文件-Vim使用技巧(7)
使用Vim打开和保存文件是最常用的操作,介绍使用edit命令通过文件路径来打开文件,使用write命令保存文件,当文件路径不存在或用户权限不匹配时,使用write命令调用外部shell程序完成操作. ...
- vim使用技巧(插入,删除,查找,复制,粘贴,剪切)
原文链接:http://blog.csdn.net/qq_38646470/article/details/79643000 编程人员很喜欢的编辑器:vim 先搞清楚vim的三种模式: 1.命令模式: ...
- 转载: vim使用技巧
两篇很牛的vim使用技巧 来源: ChinaUnix博客 日期: 2009.07.06 10:18 (共有条评论) 我要评论 读本文之前请注意:1. 本文的目标是提供一些vim的使用技巧,利用 ...
- vim gvim技巧大全(9)(转载)
vim gvim技巧大全(9) 2 用命令}移动到这个段落的底部,标记为b3 输入命令:'a,'b move来移动文本.老版本的Vi编辑器不能很好的来处理多文件.但是Vim在处理多文件上却显得优秀得多 ...
- 『学了就忘』vim编辑器基础 — 97、vim使用技巧
目录 1.在vim中导入其他文件内容或命令结果 (1)导入其他文件内容 (2)在vim中执行系统命令 (3)导入命令结果 2.设定快捷键 3.字符替换 4.多文件打开 vim使用技巧,就是vim编辑器 ...
随机推荐
- MEF 导入(Import)和导出(Export)
前言: MEF不同于其他IOC容器(如:Castle)很重要的原因在于它使用了特性化编程模型(涉及到两个概念:“特性”和“编程模型”). 特性(Attribute):举例来说就是我们在开发过程中在类上 ...
- sql 内连接、外连接、自然连接等各种连接
1.内联接(典型的联接运算,使用像 = 或 <> 之类的比较运算符).包括相等联接和自然联接. 内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行.例如,检索 students和c ...
- 【资料】wod地城掉落
•林中强盗第三层樵夫的皮带子蓝色毡帽面包刀(必定掉) •前往米勒巴赫的旅程第一层木棒邪恶强盗披风邪恶强盗匕首第二层地精盾第三层一瓶啤酒(必定掉大啤酒杯(必定掉 •喧嚷的酒吧第一层指挥棒(传奇等级10旅 ...
- @MySQL中length字符长度函数使用方法
MySQL里面的length函数是一个用来获取字符串长度的内置函数,一个汉字是算三个字符,中文的标点符号也是算三个字符,一个数字或字母算一个字符.具体用法示例如下: 1.查看某字符串的长度 SELEC ...
- datagridview 单元格类型转换【备忘】
datagridview 在设定列类型后,其下面所有行的该列都与设定的列类型相同. 在需要改变某一行的某个单元格时,遇到了一些问题,再次进行备忘: 之前在遇到该问题时参考别人的博客解决过,但是时间久 ...
- iOS: 向Github的README.md里添加图片
我们将项目上传到Github上开源供大家使用,可是,有时只是在READEME.md中做一些文字说明并不直观,如果能给上演示的截图是不是更能把功能展示的一目了然呢. 不费话了,直接上步骤: 第一步:首先 ...
- Django安装和配置环境变量
一.windows系统安装Django 1.先安装python2.x or 3.x软件.(记得勾选pip3和添加python自己的环境变量) 下载地址:http://www.python.org/ 2 ...
- [Python爬虫] 之三:Selenium 调用IEDriverServer 抓取数据
接着上一遍,在用Selenium+phantomjs 抓取数据过程中发现,有时候抓取不到,所以又测试了用Selenium+浏览器驱动的方式:具体代码如下: #coding=utf-8import os ...
- Python 谷歌翻译
#coding=utf-8 import re import urllib import urllib2 url_google = 'http://translate.google.cn' reg_t ...
- 清除linux系统的多余引导
由于我把系统给升级(update)了,在grub引导模式出现新旧版本(Grub与Grub2)的引导系统分别为正常启动和进入恢复模式各2个引导项,如下图显示:百度找不到相关或类似的教程,只好半夜起来研究 ...