vim的使用

首先我们先了解常用的通配符

1   .  #代表当前目录,但文件名以点开头则代表隐

2   .. # 代表着上级目录

3  ~  #当前用户的家目录

4  *  #所有

5  \  #转义字符

6 #      #命令行是不执行命令,但会保留在history中,文件中有#代表不执行

7 $()       #小括号中必须是命令,与其类似的还有 ``

8 ^    #在匹配字符的时候,以什么开头

9 $     #在匹配字符的时候,以什么结尾

10 |     #将左边命令的输出,交给右边命令的输入

11 ||      #前者命令执行不成功,后者命令执行

12 &&    #前者命令执行成功,后者命令则执行

vim使用

1 vim有三种模式

第一种 普通模式

主要功能: 控制光标移动,对文本进行复制、粘贴、删除等工作

在普通模式中

光标的跳转的控制建

G  #光标跳至最后一行 shift +g

gg #光标跳至文件的第一行

Ngg # 光标跳至当前文件的Number行

$   #光标跳至光标所在行的尾部

^  #光标跳至光标所在行的尾部

ctrl +f 往下翻

ctrl+b  往上翻

复制与粘贴

yy  #复制当前光标所在的行

Nyy  # 复制当前光标以光标的N行

p  #粘贴至当前光标下一行

P #粘贴至光标当的上一行

删除 剪贴 撤销

dd  #删除当前光标所在行

Ndd #删除当前光标所在的行以及往下N行

dG    #删除光标以下的所有行

D  #删除光标以及光标以后的内容

x  # 删除当前光标标记往后的字符

X  #删除当前光标标记往前的字符

u #撤销上一次的操作

替换

r   #替换当前光标标记的单个字符

R #进入REPLACE模式 连续替换 ESC结束

第二种编辑模式 主要是文件内容编辑和修改

i  #进入编辑模式  光标不做动作

a #进入编辑模式,将当前光标往后一位

0 #进入编辑模式 , 并在当前光标下添加一行空白的内容

I   #进入编辑模式,并且光标会跳转至本行的头部

A #进入编辑模式,将光标移动至本行的尾部

O #进入编辑模式,并在当前光标上添加一行空白内容


第三种模式

命令模式 主要用于搜索,,替换 保存, 退出文件。


#1.文件保存与退出

:w      保存当前状态

:q      退出当前文档(文档必须保存才能退出)

:wq    先保存,在退出

:x      先保存,在退出

ZZ      保存退出, shfit+zz

:q!    强制退出文档不会修改当前内容(常用)

:w!    强制保存当前状态(不常用)

:wq!    强制保存并退出(忽略)

:number 跳转至对应的行号  和在普通模式下用Ngg一个意思

-------------------------------------------

#2.文件内容查找

/string #需要搜索的内容(查找)

n      #按搜索到的内容依次往下进行查找

N      #按搜索到的内容依次往上进行查找

-------------------------------------------

#3.文件内容替换sed 's###g'

:1,5s#sbin#test#g  #替换1-5行中包含sbin的内容为test

:%s#sbin#test#      #替换整个文本中每一行的第一个bin,替换为test

:%s#sbin#test#g    #替换整个文本文件中包含sbin的替换为test

:%s#sbin#test#gc    #替换内容时时提示是否需要替换(用的极少)


-------------------------------------------

---------------了解即可--------------------

-------------------------------------------

#4.文件内容另存

:w /root/test.txt  #将所有内容另存为/root/test.txt文件中

-------------------------------------------

#5.文件内容读入

:r  /etc/hosts  #读入/etc/hosts文件至当前光标下面

:5r /etc/hosts  #指定插入/etc/hosts文件至当前文件的第五行下面

用vim打开test.txt并显示行号

:set number    :set nu

特殊模式(视图模式)

ctrl+v 进入可视块模式(单个字符)

1.批量删除开头的某个字符,比如 # x  d

 2.批量的添加单个字符,比如#

选中,shift+i,进入编辑模式,输入#,然后esc

3.批量的替换某个字符,比如#替换为@ r

shift+v 进入可视行模式(按行操作)

    1.复制:选中行内容后按y键及可复制。

    2.删除:选中行内容后按d键删除。

     3.剪贴

1.环境变量临时生效

:set nu            #显示行号

:set ic            #忽略大小写, 在搜索的时候有用

:set list          #显示制表符(空行、tab键)

:set no[nu|ic|ai…]  #取消临时设定的变量

2.环境变量永久生效。~/.vimrc 个人环境变量(优先级高) /etc/vimrc 全局环境变量

# vim  ~/.vimrc #当下次再打开文件自动显示行号并忽略大小写

set nu

set ic

#如果个人vim环境没有配置, 则使用全局vim环境变量配置。

#如果个人vim环境和全局环境变量产生冲突, 优先使用个人vim环境变量。

全局

开启行号

忽略大小写

个人

开启行号

不忽略大小写

4.相同文件之间差异对比,通常用于对比修改前后差异

# diff      #文件对比(No) 

# vimdiff  #以vim方式打开两个文件对比,高亮显示不同的内容

5.如果VIM非正常退出 (ctrl+z)挂起或强制退出终端没关闭VIM后

#假设打开filename文件被以外关闭,

1.恢复编写的内容

vim filename    ---->R

vim -r filename

2.如果恢复之后也保存文件了,但每次打开都提示.swp

可以选择删除该文件

vim filename ----> D

rm -f .filename.swp 删除与编辑的文件同名的文件(.filename.swp)

你可能感兴趣的:(vim的使用)