zoukankan      html  css  js  c++  java
  • vim编辑器的使用

    vim编辑器是Linux和Unix上最基本的文本编辑器,今天我们学学vim编辑器的基本使用;


    vim 安装:

    yum install vim -y
    

    1、vim的三种模式

    • 命令模式:vim filename 后进入的就是命令模式;常用于查看内容;
    • 输入模式:输入模式下在末行有“ -- INSERT --”字样;常用于输入和修改文本内容;
    • 末行模式:末行模式下在末行有“:”字样;可以执行一些命令,可保存退出;

    2、vim打开文件语法

    vim filename        
    vim +n  filename      # 打开文件自动跳转到n行,+不能省略
    vim + filename      #打开文件自动跳转到末行,+不能省略
    

    3、命令模式界面操作

    从命令模式到输入模式

    • i:光标原位置不动进入输入模式
    • I:将光标移到到行首,然后进入输入模式
    • a:将光标向后移到一位,然后进行输入模式
    • A:在当前行尾插入
    • o:在光标所在行的下面新开一行,然后进入输入模式
    • O:在光标所在行的上面新开一行,然后进入输入模式

    命令模式下的常用操作

    ①:复制、移动删除文件内容

    • yy:复制光标所在的行
    • nyy:复制光标所在的行开始向下的N行
    • dd:剪切光标所在的行
    • ndd:剪切光标所在的行开始向下的N行
    • p(小):粘贴到光标所在行的下面
    • P(大):粘贴到光标所在行的上面
    • D:删除光标所在位置到行尾的内容
    • dG:删除光标所在的行到末尾全部的行

    ②撤销和重复执行的相关操作

    • u:撤销上次所指向的操作(相当于windows中ctrl+z)
    • nu:撤销n次操作(n的值最大是50)
    • ctrl+r:撤销刚刚所撤销的那个操作(相当于windows中ctrl+y)
    • . :重复执行上一次所做的操作

    ③跳转相关的操作

    • nG:跳转到第n行
    • G:直接跳转到最后一行
    • 0:跳转到行首(“home键”会认为行首的空格也是内容,此时会跳转到空格的最前面)
    • ^:跳转到行首(不认为行首的空格是内容,此时会跳转到第一个非空字符)
    • $:跳转到行尾(等同"End"键)
    • ctrl+f:向下翻一屏
    • ctrl+b:向上翻一屏
    • h:向左(nh:移动n个字符)
    • l:向右(nl:移动n个字符)
    • j:向下等同Enter键(nj:移动n行)    
    • k:向上(nk:移动n行)
    • w:移到下一个单词的词首
    • e:跳至当前或下一个单词的词尾
    • b:跳至当前或上一个单词的词首
    • nw:表示移动n个单词

    ④查找

    • /string:在文件中搜索指定的字符串(string为字符串)
    • n:正向查找
    • N:反向查找

    ⑤替换相关操作(基本不怎么用)

    • r:替换一个字符(替换完成之后,自动返回到编辑模式)
    • R:进入替换模式(要想退出替换模式,按esc)

    4、末行模式命令操作

    ①行号

    • set nu:显示行号
    • set nonu:关闭行号

    ②跳转(一般不用)

    • num:直接跳转到第num行
    • $:直接跳转到最后一行

    ③取消匹配到的内容的高亮

    • unhl

    ④替换

    • start,end s/原始内容/替换内容/g
    • (分隔符不一定是/,只要是三个相同的符号即可)
    • 如果不用g,那么仅仅会替换每行的第一个找到的对象
    • 如果使用g,那么会将范围内所有找到的对象全部做替换
    • start,end 之间为“,”(逗号)
    • ^:表示行首
    • $:表示行位
    :23,56 s/cjk/fda/g      #将23行到56行中所有的cjk替换成fda
    :1,$ s/cjk/fda/g        #第一行行到末尾行所有的cjk替换成fda  
    :% s/cjk/fda/g         #第一行行到末尾行所有的cjk替换成fda  
    :% s#^#/#g            #第一行到末尾行行首添加/
    :1,5 s/^/ /g             #1-5行首添加空格
    :1,$ s/^ //g             #将全部行首的空格删除
    :1,$ s/^#//g            #将全部行首的#删除
    :1,5 s/a//g              #将1-5行中的a删除
    :1,5 s/$/#/g            #在1-5行的末尾添加一个#
    :1,5s/#$//g            #将1-5行末尾#删除
    

    ⑤保存和退出

    • w:执行保存操作(保存到原始文件中)
    • w /path/to/file:实现文件另存为
    • q:退出
    • !:强制执行操作

    ⑥第六类命令:高级操作

    ! 命令      #在vi中直接执行命令
    r /path/to/file   #将file中的内容导入到当前文件中
    set tabstop=4   #将tab缩进的字符数设置为4个
    set ai    #设置自动缩进(一般不用)
    set noai    #取消自动缩进
    

    ⑦复制、移动、删除多行的操作

    start,end d        #删除多行,删除start到end行的内容
    start,end m dest   #将多行移动到指定行(dest行)的下面
    start,end co dest   #将多个复制到指定行(dest行)的下面
    59,198 co 233      #例子:将59到198之间的内容复制到233行的下面
    

    5、分屏操作

    vim -o file1 file2     #实现水平分屏
    vim -O file1 file2    #实现垂直分屏
    ctrl+w       #切换到另一个分屏
    

    6、打开文件的小技巧

    vim num file   #打开文件的时候,自动跳转到第num行(加号不可省略)
    vim  file   #打开文件的时候,自动跳转到最后一行
    

    7、vim的配置文件

    • /etc/vimrc:全局配置文件,在这个文件中做的配置,会对所有用户生效
    • ~/.vimrc:(默认不存在,需要自己手动创建)用户配置文件,仅仅对当前用户生效

    编辑vi的配置文件,实现可以自动显示行号、缩进4个字符、自动对齐

    # vi ~/.vimrc
    :set nu
    :set ai
    :set tabstop=4
    

    vi崩溃缓存机制

    用vim编辑文件时,如果文件没有正常的关闭(wq、q、q!),那么就会生成一个崩溃缓存文件

    崩溃缓存文件的和作用

    • ①. 缓存文件是隐藏文件
    • ②. 缓存文件基本格式是 .file.swp (默认在原目录中)
    • ③. 缓存文件的作用是用于在系统意外关机的情况下,恢复文件中的内容(修改了文件内容,意外关掉终端或者系统)
    • ④. 缓存文件的使用方式
    • 第一步:# vim -r .file.swp
    • 第二步:保存退出
    • 第三步:删除缓存文件

  • 相关阅读:
    Atom+latex+中文环境
    pytorch中,不同的kernel对不同的feature map进行卷积之后输出某一个channel对应的多个feature map如何得到一个channel的feature map
    Ubuntu16.04上添加用户以及修改用户所属的组
    shell批处理文件,并将运算结果返回
    pytorch如何能够保证模型的可重复性
    Linux用管道命令对文件的移动
    python中调用多线程加速处理文件
    Python中random模块在主函数中设置随机种子是否对于调用的函数中的随机值产生影响?
    pytorch统计模型参数量
    pytorch使用tensorboardX进行网络可视化
  • 原文地址:https://www.cnblogs.com/du-z/p/10832019.html
Copyright © 2011-2022 走看看