• 初识VIM


    1 文件操作    1

    1.1 VIM基本介绍    1

    1.2 VIM模式介绍    1

    1.3 VIM命令模式    3

    1.4 VIM编辑模式    3

    1.5 VIM末行模式    3

    1.6 VIM视图模式    3

    1.7 VIM环境变量    4

    1.8 VIM扩展知识    4

    1.9 VIM练习    4

    2 目录操作    4

    1. 文件操作

    Linux系统VIM编辑

    1. VIM基本介绍

      1. vim概述

    vi和vim命令是linux中强大的文本编辑器,由于Linux系统一切皆文件,编辑文件是必不可少的工作,而vim有着强大的文本编辑功能。

    1. vi和vim有什么区别?

    1、vi不下时语法高亮

        2、vim显示语法颜色高亮

        3、其他功能没有什么不同

        4、所以在Linux系统中,使用vi还是vim取决于个人习惯

    1. 安装vim

    这里我已经安装过了 键入命令 yum install -y vim 安装vim

    [root@oldboy ~]# yum install -y vim

    已加载插件:fastestmirror

    Loading mirror speeds from cached hostfile

    * base: mirrors.aliyun.com

    * extras: mirrors.aliyun.com

    * updates: mirrors.aliyun.com

    软件包 2:vim-enhanced-7.4.160-4.el7.x86_64 已安装并且是最新版本无须任何处理

            

     

    1. VIM模式介绍

      1. vim编辑器中设置了三种模式

    1. 命令模式
    2. 编辑模式
    3. 末行模式
      1. VIM模式之间的切换

    4. 命令模式———》输入模式

      iIaAoO

    2、输入模式———》命令模式

        ESC键就可以切换到命令模式

    3、命令模式———》末行模式

    1. 末行模式———》命令模式

      ESC键    

    2. VIM命令模式

      1. 移动

    1、kjhl:上下左右

        2、G:光标跳转到末端

        3、gg:光标跳转到顶端

        4、ngg:指定行号跳转;

            例如:3gg:表示光标移动到第三行

        5、$/end:跳转到当前行末

        6、^/home:跳转到当前行首

        7、Ctrl+b/pgup:向上翻一页

        8、Ctrl+f/pgdo:向下翻一页

    1. 输入模式

        1、a:在光标的下一个字符插入

        2、A:直接将光标移动到行末插入

        3、i:再光标处插入字符

        4、I:在行首插入字符

        5、o:再下一行插入字符

    1. 复制

        1、yy:复制当前行

        2、5yy:复制当前行和一下4行

    1. 粘贴

        1、p:下一行粘贴

    1. P:下一行粘贴
    1. 删除

        1、dd:删除当前光标所在的行

        2、4dd:删除往前行和以下3行

        3、dG:删除当前行以后的所有行

        4、D:删除当前行内光标后的所有内容

        5、x:删除光标所在的字符

        6、X:删除当前所在行光标前面的一个字符

        7、shift+::进入末行模式

    1. 撤销

      1. u:撤销上一步操作
      2. U:撤销所有操作
    2. 替换

      1. r:替换当前光标所在的单个字符
      2. R:进入replace模式:连续替换,ESC结束
    1. VIM编辑模式

        1、a:在光标的下一个字符插入

        2、A:直接将光标移动到行末插入

        3、i:再光标处插入字符

        4、I:在行首插入字符

        5、o:再下一行插入字符

     

    1. VIM末行模式

      1. 查找 /string 需要搜索的内容(查找) ***

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

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

    1.     替换 ***

        1、:s#sbin#test 替换光标所在行的第一个满足条件的内容

        2、:s#sbin#test#g 替换光标所在行的所有满足条件的内容

        3、    :m,nds#sbin#test#g 替换m-n行中包含sbin的内容为test-5行中包含sbin的内容为test

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

        5、    :%s#sbin#test#gc 替换内容时时提示是否需要替换

        6、:%s#sbin##ng    查询全文中sbin的数量

    1.     另存

        1、:w /root/test 将文件所有内容另存为/root/test

    1.     读入

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

        2、:5r /etc/hosts 指定/etc/hosts文件当前文件的哪行下面

    1. 打开新文件

        1、:e /etc/hosts 新打开一个文件

    1. VIM视图模式

      1. 进入视图模式(从命令行模式进入视图模式)

      1、ctrl+v 进入VISUAL BLOCK 选中需要注释的行(可视块模式) ***

      a.插入:按shift+i进入编辑模式,输入#,结束按ESC键

      b.删除:选中内容后,按x或者d键删除

      c.替换:选中需要替换的内容, 按下r键,然后输入替换后的内容

      2、shift+v 进入VISUAL LINE 选中行内容(可视行模式) ***

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

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

    2. VIM环境变量

      1. 环境变量(临时生效)

        1、:set nu 显示行号

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

        3、:set ai 自动缩进

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

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

    1. 环境变量(永久生效)

        1、~/.vimrc 个人环境变量(优先级高)

        2、/etc/vimrc 全局环境变量

    1. VIM扩展知识

      1. 同时编辑多个文件

    Ctrl+ww切换编辑两个文件,需要退出两次

    1、vim -o file1 file2 水平分割

    [root@oldboy ~]# vim -o 1.txt 2.txt

    1111111

    2222222

    3333333

    1.txt 1,1 全部

    4444444

    5555555

    6666666

    2、vim -O file1 file2 垂直分割

    1. vimdiff相同文件之间差异对比

    vimdiff 文件对比(用的不多)

    vimdiff 以vim方式打开两个文件对比,标记不同的内容

    1. 如果VIM非正常退出

    如果VIM非正常退出挂起或强制退出终端没关闭VIM后

    //删除同文件名的.swp文件即可解决

    示例:.filename.swp rm -f .filename.swp

    1. VIM练习

    请把/etc/passwd 复制到/tmp/目录下,并重命名为test.txt

    用vim打开test.txt并设置行号

    分别向下、向右、向左、向右移动5个字符

    分别向下、向上翻两页

    把光标移动到第10行

    让光标移动到行末,再移动到行首

    移动到test.txt文件的最后一行

    移动到文件的首行

    搜索文件中出现的 root 并数一下一共出现多少个,不区分大小写搜索

    把从第一行到第三行出现的root 替换成student

    还原上一步操作

    把整个文件中所有的root替换成student

    把光标移动到20行,删除本行

    还原上一步操作

    删除第19行

    还原上一步操作

    删除从5行到10行的所有内容

    还原上一步操作

    复制2行并粘贴到11行下面

    还原上一步操作(按两次u)

    复制从11行到15行的内容并粘贴到8行上面

    还原上一步操作(按两次u)

    把13行到18行的内容移动文件的尾部

    还原上一步操作(按两次u)

    光标移动到首行,把/sbin/nologin改成/bin/bash

    在第一行下面插入新的一行,并输入"# Hello!"

    保存文档并退出

  • 相关阅读:
    Redis 之order set有序集合结构及命令详解
    Redis 之set集合结构及命令详解
    Redis 之list链表结构及命令详解
    Redis 之string结构及命令详解
    Redis 通用key操作命令
    Redis 在Linux下的安装
    Entity FrameWork 操作使用详情
    Linux 之常用操作指令详解
    Linux 之根目录介绍
    php 加密解密函数封装
  • 原文地址:https://www.cnblogs.com/majinhai/p/9534061.html
Copyright © 2020-2023  润新知