`
iyuan
  • 浏览: 470019 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

vim批量修改多文件数据(转/备忘)

vim 
阅读更多
在工作中常常需要对成百上千个纯文本进行批量替换操作,经过多次试验,我认为使用VIM是最好的办法。
我们需要用到的是VIM的args和 argdo 两个命令。
args的用处是把需要进行批量操作的文件标记出来。例如:
args d:\a\*.txt
args d:\a\**\*.txt

以上示例中的第一个是把D盘a目录下的所有纯文本文件作上标记,第二个则包括子目录。
在VIM中可以使用pwd命令查看VIM的当前目录,可以使用cd命令改变当前目录的位置。例如:
cd d:\a\
args会找到指定目录下的所有指定类型的文件并以编辑第一个。现在可以对所有的文件进行同一个替换操作。
:argdo %s/\<x_cnt\>/x_counter/ge | update

":argdo"命令以另一个命令为参数。该命令将对所有待编辑的文件都执行一次。
"%s"替换操作将施于所有行上。它通过"\<x_cnt\>"查找"x_cnt"。其中"\<"和"\>"使得只有完整的单词会被匹配,这样"px_cnt"和"x_cnt2"中的x_cnt才可以免遭毒手。
替换操作的标志"g"使得每行中的全部"x_cnt"都被替换。标志"e"则用于避免某些文件中一个"x_cnt"都找不到时的错误消息。否则的话":argdo"命令遇到这些错误就会终止整个操作。
"|"用来分隔两个命令。后面的"update"命令会在文件有改变时进行保存。如果没有一个"x_cnt"被替换为"x_counter"那就不进行任何操作。

在实际操作中还有一点小技巧,那就是如何避免在操作中频繁出现“请按Enter或其他命令继续”以及出现“更多”的提示而需要按空格键继续,如果要操作的文件数目很多,频繁地按回车或空格键会把人整疯的。
在vimrc文件中作如下设定:
set nomore
打开more选项,列表消息会在全屏填满时暂停,通过nomore选项关闭就不会有暂停,列表消息会继续进行直到结束为止。


猛击看原文
分享到:
评论

相关推荐

    vim资源文件

    vim的资源文件,解压后,将其中的.vim文件夹放入到你的/Home目录下,里面一般的vim插件都有了,如还想要其他的可以下载对应的vim插件,放入.vim/plugin文件夹下面,doc文件放入.vim/doc文件夹下面 vim的效果 ...

    vim设置20130906, 适合编程爱好者

    每个插件的目录下的conf.vim中有更多的设置及说明 "FuzzyFinder fuf.vim模糊查找 source ~/.vim/bundle/fuzzyfinder/conf.vim "NERD_commenter.vim source ~/.vim/bundle/nerdcommenter/conf.vim "单独切换打开...

    vim自动生成文件模板 templates 设置方法

    在IT行业中,文本编辑器是开发者们不可或缺的工具,Vim作为一款强大的命令行文本编辑器,因其高效和可定制性而备受喜爱。...在`一日二十四挨踢`网站上留言,你还可以得到更多关于Vim模板使用的帮助和建议。

    tmux配置文件,兼容vim按键

    tumx配置文件,兼容vim的h,j,k,l按键,下载后,在当前文件夹执行mv tmux.conf ~/.tmux.conf,然后tmux new -s test新开一个tmux的session,使用crtl+b h,j,k,l既可以快速移动窗口。

    史上最全vi/vim使用手册/教程/技巧/键盘图等

    **vim/vi编辑器详解** vim(Vi Improved)是一款强大的文本编辑器,源自早期的vi编辑器,广泛应用于Linux和Unix系统中。它以其高效、命令行操作和丰富的功能著称,是程序员和系统管理员的必备工具。本教程将涵盖vim...

    vim配置 molokai.vim

    cp molokai.vim /usr/share/vim/vim73/colors cp /etc/vim/vimrc /etc/vim/vimrc.bak cp vimrc /etc/vim/vimrc

    vim 配置文件 vim 配置文件 vim 配置文件

    vim配置文件 vimrc vim配置文件 vimrc vim配置文件 vimrc

    Ubuntu vim配置(很简单)

    下载vimconfig.tar.tgz,将文件拷贝到ubuntu, 执行下面命令: tar zxvf vimconfig.tar.tgz cd vimconfig cp .* ~/ -rvf 部分配置情况: "-------------TagList--------------- "设置ctags路径 let Tlist_Ctags_Cmd ...

    vim-config-framework, vim/neovim配置框架.zip

    vim-config-framework, vim/neovim配置框架 极简,模块化,注释,延迟加载 vim/neovim配置框架to配置的主要困难是它们变得太复杂无法调试,做出太多的意见并且不友好地合并 upstream 变化。我在寻找代码 Fragment请...

    vim下systemverilog/VMM/UVM语法高亮文件

    该vim文件用于vim/gvim下,systemverilog/VMM/UVM文件自动高亮关键字.基于的文件版本及内容为: 1.systemverilog 1800-2012中附录内所有关键字; 2.VMM 1.2中class\method\type\macro; 3.UVM 1.2中class\method\type\...

    NCL语言for VIM_style.zip_Linux/Unix编程_NCL style_style_vim

    这个文件定义了NCL语言的各种元素,如关键字、函数、变量等的语法颜色和格式,使得VIM在打开NCL文件时能自动识别并以不同的颜色显示,提高代码的可读性。用户可以通过在VIM中加载这个文件来启用NCL的语法高亮功能。 ...

    linux VIM 配置文件

    vimrc文件拷贝到用户家目录和root家目录下更名为.vimrc 两个TXT文件拷贝到/usr/share/vim/vim73/doc 目录下 两个VIM文件拷贝到/usr/share/vim/vim73/plugin目录下

    linux环境下,vim82.zip

    Vim82版本是Vim的一个重要迭代,它带来了许多新特性,如多窗口支持、增强的语法高亮、更好的插件管理等。对于那些在没有网络连接的Linux系统中工作的用户来说,离线安装Vim82是一个必要的过程。 在给定的压缩包文件...

    vim8配置成强大的IDE

    使用本文件可以把vim配置成强大的IDE,但是必须使用VIM8.0以上的版本。首先将本文件内容copy到~/.vimrc里,如果没有该文件需要创建;其次git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/...

    使用Vim批量重命名文件-Linux开发

    vimv vimv是基于终端的文件重命名实用程序,可让您轻松地使用Vim批量重命名文件。 安装curl https://raw.githubusercontent.com/thameera/vimv/master/vimv&gt;〜/ bin / vimv && chmod +755〜/ b vimv vimv是基于终端...

    VIM配置文件vimrc(Linux/Ubuntu)

    VIM配置文件vimrc(Linux/Ubuntu)

    vim的c.vim和cpp.vim文件

    可能是个人配置或数据文件)、`.ICEauthority`(X Window系统授权文件)、`.gksu.lock`(可能与图形界面权限管理相关的临时锁文件)、`.profile`(bash shell的启动配置文件)、`.swo`和`.swp`(Vim的交换文件,用于...

    vimrc:我的vim配置

    这些说明会安装vim资料,以供我使用。 安装 git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim git clone git@github.com:henpel/vimrc.git ~/Desktop/workspace/ mkdir ~/.vim/...

    vimtips 学习VIM的理想资源

    学习vim: http://www.vim.org/ O cial site http://chronos.cs.msu.su/vim/newsgroup.html Newsgroup and Usenet http://groups.yahoo.com/group/vim Speci c newsgroup http://u.webring.com/hub?ring=vim VIM ...

Global site tag (gtag.js) - Google Analytics