Vim 基础

vim 环境变量设定

# 1. 环境变量临时生效
: set nu    显示行号
: set ic    忽略大小写,在搜索的时候有用
: set ai    自动缩进
: set list  显示指标符号(空行,tab键)
: set no [nu | ic | ai...]   取消临时设定的变量

# 2. 环境变量永久生效
# ~ /.vimrc   vim初始化文件
# ~/.vimrc 个人环境变量(优先级高)   /etc/vimrc 全局环境变量
# 当下次打开文件自动显示行号并忽略大小写
vim ~/.vimrc 
    set nu
    set ic
  
# 如果个人vim环境变量没有配置,则使用全局vim环境变量配置
# 如果个人环境变量和全局环境变量产生冲突,优先使用个人环境变量

vim小技巧

# 1. vim 同时编辑多个文件
 vim -o file1 file 2   #水平分割
 vim -O file1 file 2   #垂直分割
 #ctrl + w 文件间切换
 
 # 2. 相同文件之间差异对比,通常用于对比修改前后之间的差异
  diff file1 file2     #文件对比
  vimdiff file1 file2  #以vim方式打开两个文件对比,高亮显示不同的内容
  
 # 3. 如果vim非正常退出,Ctrl+z 挂起,或强制退出终端之前没有关闭vim后
   rm -rf .filename.swp   # 需删除同文件名的.swap文件即可解决

vim编辑工具使用

vim编辑工具和nodepad++ 一样,只是文本编辑器

# 普通模式
  ##命令光标跳转
    G  #光标跳转至末端
    gg #光标跳转至顶端
    Ngg #光标跳转至当前文件内的第N行
    $   #光标跳转至当前光标所在行的尾部
    ^|0  #光标跳转至当前光标所在行的首部
    Ctrl + f   #往下翻页(行比较多)
    Ctrl + b   #往上翻页
  ##复制与粘贴
    yy   #复制当前光标所在的行
    5yy  #复制当前光标以及光标下4行
    p(小写)  #粘贴至当前光标下一行
    P(大写)  #粘贴至当前光标上一行
  ##删除,剪贴,撤销
    dd  #删除当前光标所在行
    4dd  #删除当前光标所在的行以及往下的3行
    dG   #删除当前光标以后的所有行
    D    #删除当前光标以及光标以后的内容
    x    #删除当前光标标记往后的字符
    X    #删除当前光标标记往前的字符
    dd & p  #剪贴,先删除dd(number dd),后粘贴p
    u    #撤销上一次操作
  ##替换
    r   #替换当前光标标记的单个字符
    R   #进入REPLACE模式,连续替换,ESC结束
  ##进入编辑模式
     i 在光标前插入
     a 在光标后插入
     o 换行插入
     s 删除当前光标字符,插入
     
# 编辑模式
   编辑内容,看业务需要
# 末行模式
  ##文件保存与退出
    w 保存
    q 退出
  ##文件内容查找
    /string  #需要搜索的内容(查找)
    n  #按搜索的内容依次往下进行查找
    N  #按搜索的内容依次往上进行查找
  ##文件内容替换
   :1,5s/sbin/test/g  #替换1-5行中包含sbin的内容为test
   :%s/sbin/test/g    #替换整个文本文件中包含sbin的内容为test
   :%s/sbin/test/gc   #替换内容时提示是否替换
  ##文件内容另存
   :w /root/test.txt  #将所有内容另存为/root/test.txt文件中
  ##文件内容读取
   :r /etc/hosts   #读入/etc/hosts文件至当前光标下面
   :5r /etc/hosts  #指定插入/etc/hosts文件至当前文件的第五行下面
# 视图模式
   Ctrl + v 进入可视块模式,选中需要注释的行
      1. 插入: 按Shift + i进入编辑模式,输入\#,结束按ESC键
      2. 删除: 选中内容后,按x或d删除
      3. 替换: 选中需要替换的内容,按下r键,然后输入替换后的内容
   ------------------------------------------------------------
    Shift + v 进入可视行模式,选中整行内容
      1. 复制: 选中行内容后按y键及可复制
      2. 删除: 选中内容后按d键删除

vim练习题

#1,将/etc/passwd复制到/root目录下,并重命名为test.txt
[root@localhost ~]# cp -rvf /etc/passwd /root/test.txt

#2,将vim打开test.txt并显示行号
[root@localhost ~]# vim test.txt
                   :set nu
#3,分别向下,向上,向左,向右移动五个字符,分别向下,向上翻两页