关于vim:oeasy教您玩转vim-65-批处理操作

43次阅读

共计 1403 个字符,预计需要花费 4 分钟才能阅读完成。

批处理操作

回顾上次

  • 咱们上次参数列表 arguments list
  • 所谓参数列表指的是 vim 关上的 参数列表
  • 参数会加载到内存中成为 buffer
  • 参数的管制

    • :arga filename 增加 参数
    • 此操作反对 * 能够关上多个文件
    • :argd filename来删除 参数
    • :args 查问参数列表
  • 缓冲的管制

    • :bd filename来删除 缓存
    • :e filename来关上 缓存
    • ls能够列出缓存列表
  • 能够在 terminal 中配合 find 来找到文件

    • 而后作为参数给vim
    • sudo find / -mindepth 3 -maxdepth 4 -name passwd | xargs vi
  • 精准地管制了参数列表或者缓冲列表
  • 这两个列表能够怎么用呢?🤔

同时关上 2 个文件

  • vi -o o1 o2
  • :windo normal I oeasy

    • windo所有窗口都执行
    • normal 进入一般模式
    • I oeasy插入oeasy
  • :windo normal o

    • windo所有窗口都执行
    • normal 进入一般模式
    • o 换行
  • :windo normal "%p

    • windo所有窗口都执行
    • normal 进入一般模式
    • "%p 粘贴各自文件名

批量替换

  • :windo %s/oeasy/o2z/g

    • windo 所有窗口都进行
    • %s/oeasy/o2z/goeasy 替换为o2z
    • 而后能够:wall 全副保留

批量细节

  • 能够设置 range

    • 这个指的是 window 编号
    • :1,3windo normal Ioeasy
  • 能够执行批处理序列, 用 | 隔开各个命令

    • :windo %s/oeasy/o2z/g| %s/o2z/o3z/g
    • 这样就能够执行两条替换命令了
    • :windo set nolist nofoldcolumn | normal zn
    • : windo set fileencoding=utf-8 | update自动更新

bufdo

  • 除了windo
  • 咱们还能够对每一个 buffer 执行命令

    • :bufdo %s/oeasy/o2z/g
    • 在以后window 遍历每个buffer
    • 能够设置 hidden 暗藏 批改后的buffer
    • autowrite 主动保留
  • :ls:buffers

    • 查看以后的 buffers 列表
  • 可删除 buffers 缓冲文件

    • :bd1
    • :bd o2z.txt
  • 可关上新的 buffer 缓冲文件

    • e .
  • 能够抉择缓冲文件

    • :b1

argdo

  • 咱们还有一种批量执行命令的形式

    • :argdo %s/oeasy/o2z/g
  • 关上.c 文件, 设置文件格式并更新

    • :args *.c
    • :argdo set ff=unix | update
  • 关上 .c.h文件,批量替换并更新

    • :args *.[ch]
    • :argdo %s/\<my_foo\>/My_Foo/ge | update
  • 查看相应的参数文件列表

    • 能够用:args
  • 删除参数文件

    • 能够用:argd
  • 增加参数文件

    • 能够用:arga

总结

  • 这次有三种批量替换,别离是

    • :windo
    • :bufdo
    • :argdo
  • 执行的 {cmd} 能够用 | 按程序减少

    • update 自动更新
    • :set autowrite 主动写入
    • :set hidden 能够暗藏未保留 buffer
  • 别离对应的windowbuffersarguments
  • 各有各自的列表、切换、删除、减少的形式
  • 多文件多窗口还有什么可玩的么?🤔
  • 下次再说 👋
    [Github 地址] (https://github.com/overmind19…)
    [Gitee 地址] (https://gitee.com/overmind198…)
    [蓝桥实验楼 邀请码 FJWYIMGB] (https://www.lanqiao.cn/course…)
正文完
 0