习惯了vim编辑,有时在shell脚本中也可以调用vim来批处理编辑文件;那么如何进行插入,模拟输入ESC按键呢?
见如下代码:
zkl@user-desktop:/tmp$ vi 1.txt <<end! > i > abc > ^[ > :wq > end! Vim: 警告: 输入不是来自终端(键盘) zkl@user-desktop:/tmp$ cat 1.txt abc zkl@user-desktop:/tmp$
其中:^[为在shell控制台按ctrl+v,然后按ESC按键
BTW:另一种方法:
http://easwy.com/blog/archives/replace-string-in-multiple-files/
vim `egrep -rl 'AAA|CCC' * |grep -v .svn` :argdo %s/AAA/BBB/ge | %s/CCC/DDD/ge | w