zoukankan      html  css  js  c++  java
  • 工作中常用到的Vim命令

    最近工作中需要到linux服务器上更改文件,苦于对vim的各种命令不熟悉,今天特此总结并熟悉一下各种vim命令,好提高工作效率。后期持续更新

    vim编辑器个人设置

    1. 先复制一份vim配置模板到个人目录下,如果/usr/share/vim/vimrc文件不存在则直接跳到第二步
      cp /usr/share/vim/vimrc ~/.vimrc
    2. 编辑个人目录下的.vimrc
      vi ~/.vimrc
    3. 进入vim编辑模式编写以下配置信息
    syntax on           '开启语法高亮'
    set nu!             '设置行号'
    set autoindent      '自动缩进'
    set tabstop=4       '设置tab键为4个空格'   
    set showmatch       '设置匹配模式,类似当输入一个左括号时会匹配相应的右括号'
    

    命令模式(command mode)—执行命令

      在该模式中,可以输入命令来执行许多种功能。控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。

    输入模式(Insert mode)—输入文本

      vi被运行时,通常处在命令模式下,键入以下命令 可以使vi退出命令模式,进入输入模式:I(i)、A(a)、O(o)。

    末行模式(last line mode)—执行待定命令

      将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。不过一般我们在使用时把vi简化成两个模式,就是将末行模式(last line mode)也算入命令行模式command mode)。

    命令模式下常用命令

    移动命令

    ^ 移动到当前行的开头处
    $ 移动到当前行的结尾处
    w 移动到下一个单词的开始位置
    gg 移动到文件头
    shift+g 移动到文件尾
    h 光标左移
    j 光标下移
    k 光标上移
    l 光标右移
    Ctrl+b(back) 屏幕往后移动一页
    Ctrl+f(forward) 屏幕往前移动一页
    Ctrl+u(up) 屏幕往上移动半页
    Ctrl+d(down) 屏幕往下移动半页

    撤销命令

    u 倒退一步
    Ctrl+r 重做

    删除命令

    x 删除当前字符
    dd 删除光标所在行
    dgg 删除光标所在行到文件头的所有字符
    dG 删除光标所在行到文件尾的所有字符

    拷贝剪切和粘贴

    yy 复制光标所在行
    p 将已复制的数据在光标下一行粘贴
    P 将已复制的数据在光标上一行粘贴
    . 重复前一个动作

    退出命令

    :w filename(存入指定文件) 另存为
    :q 退出
    :q! 强行退出vi,使被更新的内容不写回文件中。
    :wq 保存并退出,即将上面的两步操作可以合成一步来完成。
    :x 保存并退出

    搜索命令

    /text  从光标开始向后查找text,按n查找下一个,按N查找前一个。
    ?text 从光标开始向前查找text,按n查找前一个,按N查找下一个。
    搜索特殊符号.*[]^%/?~$需要转义
    :n 将光标快速定位到n行
    vim +/text a.php 打开a.php并将光标定位到第一个text
    % 快速定位到另一半符号{}[]()

    替换命令

    r 替换光标所在字符(按下r后输入新字符)
    %s/t/o/g 将所有的t替换为o

    修改命令 c [数字] motion

    c^ 删除光标从当前位置到当前行的开头处所有字符,并进入插入模式
    c$ 删除光标从当前位置到当前行的结尾处所有字符,并进入插入模式

    插入命令

    i 在当前位置前插入并切换到输入模式
    a 在当前位置后插入并切换到输入模式
    o 在当前行下方插入一行并切换到输入模式

    按下插入命令可进入文本输入模式

    :!可以执行其他shell命令

  • 相关阅读:
    15.scrapy中selenium的应用
    14.UA池和代理池
    17.基于scrapy-redis两种形式的分布式爬虫
    08.Python网络爬虫之图片懒加载技术、selenium和PhantomJS
    05.Python网络爬虫之三种数据解析方式
    06.Python网络爬虫之requests模块(2)
    04.Python网络爬虫之requests模块(1)
    16.Python网络爬虫之Scrapy框架(CrawlSpider)
    10.scrapy框架简介和基础应用
    Python网络爬虫第三弹《爬取get请求的页面数据》
  • 原文地址:https://www.cnblogs.com/jesse131/p/9079360.html
Copyright © 2011-2022 走看看