Vim

作者: 胡萝卜有刺儿 | 来源:发表于2017-09-26 18:18 被阅读15次

    vim

    • gg 光标移动到文件开头
    • G 光标移动到文件尾行
    • 显示行号
      :set number
    • 进入某行
      :n n为行号
    • w 光标移动到下一个单词开头
    • b 光标移动到上一个单词开头
    • e 光标移动到下一个单词结尾
    • 0 光标移动到本行开头
    • ^ 光标移动到本行开头字符(出去空格)
    • $ 光标移动到本行结尾
    • A 光标移动到本行结尾,直接编辑
    • H 光标移动到屏幕的首行
    • M 光标移动到屏幕的中间行
    • L 光标移动到屏幕的尾行
    • ctrl + f 向下翻页
    • ctrl + b 向上翻页
    • ctrl + d 向下翻半页
    • ctrl + u 向上翻半页
    • ctrl + e 向下翻一行
    • ctrl + y 向上翻一行
    • [[ 光标移动到上一个位于第一列的"{"
    • ]] 光标移动到下一个位于第一列的"}"
    • { 转到上一个空行
    • } 转到下一个空行
    • '' 两个单引号 光标移动到上一个标记处
    • '. 光标移动到上一次修改行
    • `. 光标移动到上一次修改点

    查找

    • / ? 全文向上/下查找匹配字符,支持正则 n向下匹配 N向上匹配
      • # 光标在单词上时,输入*向下查找匹配该单词的单词 输入#向上查找
    • g* g# 与*#相似,不完全匹配光标处单词
    • gd 查找光标处单词在文档中非注释段出现的第一次出现的位置
    • % 查找光标所处位置匹配的括号 ()[]{}

    替换

    • :s/ab/cd/g 将光标所在行包含ab的字符串中的ab替换为cd
    • :%s= *$== 将所有行尾多余的空格删除

    拷贝, 删除与粘贴

    • y 表示拷贝, d 表示删除, p 表示粘贴. 其中拷贝与删除是与光标移动命令
    • yw 拷贝从光标开始到光标所在单词结尾内容
    • dw 删除从光标开始到光标所在单词结尾内容
    • daw 删除光标所在位置单词
    • y0 拷贝从光标开始到光标所在行首内容
    • d0 删除从光标开始到光标所在行首内容
    • y$ 拷贝从光标开始到光标所在行结尾内容
    • d$ 删除从光标开始到光标所在行结尾内容
    • yy 拷贝光标所在行
    • dd 删除光标所在行
    • D 删除当前光标到光标所在行尾内容
    • xp 交换光标与其后的字符位置
    • ddp 光标所在行与下一行交换
    • 5yy 拷贝光标以下五行
    • 5dd 删除光标以下五行
    • x 删除光标后一个字符 X删除光标前一个字符

    自动补填

    • ctrl + p 编辑模式,输入几个字符后,ctrl + p 会向下搜索补齐单词

    TAB

    • << 所在行向左移动一个tab
    • 所在行向右移动一个tab

    • 5>> 光标后五行向右移动一个tab
    • :10,15> 10-15行向右移动一个tab
    • :10,15>> 10-15行向右移动两个tab

    其他

    ls

    • a 显示指定目录下所有子目录与文件,包括隐藏文件。
    • A 显示指定目录下所有子目录与文件,包括隐藏文件。但不列出“.”和 “..”。
    • b 对文件名中的不可显示字符用八进制逃逸字符显示。
    • c 按文件的修改时间排序。
    • C 分成多列显示各项。
    • d 如果参数是目录,只显示其名称而不显示其下的各文件。往往与l选项一起使 用,以得到目录的详细信息。
    • f 不排序。该选项将使lts选项失效,并使aU选项有效。
    • F 在目录名后面标记“/”,可执行文件后面标记“*”,符号链接后面标记 “@”,管道(或FIFO)后面标记“|”,socket文件后面标记“=”。
    • i 在输出的第一列显示文件的i节点号。
    • l 以长格式来显示文件的详细信息。这个选项最常用。
    • L 若指定的名称为一个符号链接文件,则显示链接所指向的文件。
    • m 输出按字符流格式,文件跨页显示,以逗号分开。
    • n 输出格式与l选项相同,只不过在输出中文件属主和属组是用相应的UID号和 GID号来表示,而不是实际的名称。
    • o 与l选项相同,只是不显示拥有者信息。
    • p 在目录后面加一个“/”。
    • q 将文件名中的不可显示字符用“?”代替。
    • r 按字母逆序或最早优先的顺序显示输出结果。
    • R 递归式地显示指定目录的各个子目录中的文件。
    • s 给出每个目录项所用的块数,包括间接块。
    • t 显示时按修改时间(最近优先)而不是按名字排序。若文件修改时间相同,则 按字典顺序。修改时间取决于是否使用了c或u选顶。缺省的时间标记是最后一次修 改时间。
    • u 显示时按文件上次存取的时间(最近优先)而不是按名字排序。即将-t的时间 标记修改为最后一次访问的时间。
    • x 按行显示出各排序项的信息。
    • 列出当前目录的文件、文件夹完整路径
      ls -1 | awk '{print i$0}' i=pwd'/'
    • 列出当前目录及子目录的文件、文件夹完整路径
      ls -R |awk '{print i$0}' i=pwd'/'
    • 统计文件个数
      ls -l "/home/log" | grep "*.log" | wc -l

    相关文章

      网友评论

          本文标题:Vim

          本文链接:https://www.haomeiwen.com/subject/giheextx.html