vim
一、退出vim编辑器
1.vim编辑器,可以新建文件,也可以修改文件,命令为:vim /test/demo.txt
如果这个文件不存在,则为新建,则下方会有提示为新文件。如果这个文件已存在,则没有提示。
2.进入编辑器后,按 I ,则切换到’插入’状态,就可以通过上下左右移动光标,或空格、退格以及回车等操作进行内容编辑。
3.退出vim编辑器的方法和区别
a 保存退出: Esc退出编辑
i 输入冒号: 和 wq,即":wq" (意思为write写入,quit退出)
ii 或者":x"
iii 或者"shift+zz" , 即按2次大写Z
b 正常退出:Esc退出编辑后,输入":q"
c 不保存退出:Esc退出编辑后,输入":q!"
d 强制退出:Esc退出编辑后,输入":!"
二、Tab制表符
设置缩进
:set shiftwidth=4 设置自动缩进 4 个空格, 当然要设自动缩进先,在使用<<等命令时生效
:set sts=4 即设置 softtabstop 为 4. 输入 tab 后就跳了 4 格,在编辑时时使用Tab键生效
:set tabstop=4 实际的 tab 即为 4 个空格, 而不是缺省的 8 个.
:set expandtab 在输入 tab 后, vim 用恰当的空格来填充这个 tab.
<< //向左移动一个tab
>> //向左移动一个tab
2>> //光标后2行向右移动一个tab,若光标在第2行,则2-3行向右移动一个tab
:1,10> //1-10行 向右移动1个tab
:1,10>> //1-10行 向右移动2个tab
三、移动光标位置
gg //移动到首行第一个字符
10gg //移动到第10行的第一个字符
h j k l //分别是 左 下 上 右 方向键,注意这是4个命令
H L G //分别是移至屏幕首位、移至屏幕末行首位、移至文档末行首位,注意这是3个命令
$ ^ //分别是移至本行末尾、移至本行首位,注意这是2个命令
o //在当前行的下面新增一行,并进入编辑模式
b //移动到上个单词
四、删除
dd //删除当前行
5dd //删除光标以下5行,若光标在第5行,则删除了5-9行
:2d //删除第2行
:1,10d //删除1-10行,包括1和10行
:1,.d //删除 1-当前行 ,其中.表示光标所在的行。等同于命令":1,d",取消了点符号
:,10d //删除 当前行-10行
:%d //删除文件中的全部内容
五、拷贝、粘贴
/**拷贝的用法和删除类似**/
yy //拷贝当前行
5yy //拷贝光标以下5行,若光标在第2行,则拷贝了5-9行
:2y //拷贝第2行
:1,10y //拷贝1-10行,包括1和10行
:1,.y //拷贝 1-当前行 ,其中.表示光标所在的行。等同于命令":1,y",取消了点符号
:,10y //拷贝 当前行-10行
:%y //拷贝文件中的全部内容
p //粘贴到下一行,拷贝后使用p进行粘贴
六、查找
/word //向光标之下查询word单词
?word //向光标之上查询word单词
n //跳到下一个word
N //跳到上一个word
七、替换
:s/start/end/g //将当前行的start全部替换为end
:1,5s/start/end/g //将第1-5行的start全部替换为end
:%s/start/end/g //将文件中的所有start替换为end
:%s/start/end/gc //将文件中的所有start替换为end,需要用户确认,输入y会一个一个替换,输入a全部替换
**其它
:set nu //显示行号
:set ai //自动缩进
u //撤销,比如使用了dd删除了当前行,可以使用u来进行撤销
x //删除光标所在字符
重点:修改vim编辑器的默认配置
1.编辑文件
vim /etc/vimrc
2.文件中会有下面这个参数,如果你的被注释了,需要打开
syntax on
3.在文件最后添加上你需要的配置:
set nu //显示行号
set ai //自动缩进 autoindent
set sts=4 //tab时为4个空格
set shiftwidth=4 //自动tab时为4个空格,比如你使用>>命令
set cursorline //突出显示当前行
set nobackup //覆盖文件时不备份
文件位置 /etc/vimrc,有些老版本系统可能在 /etc/vim/vimrc
掌握以上命令基本上是满足大部分需求了,想要扩展的可以浏览以下网址:
http://www.runoob.com/linux/linux-vim.html