首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

vim下的文件处理,该如何处理

2012-02-15 
vim下的文件处理找到匹配的一行 其中包含ABC然后复制这一行 把ABC改成EFG 放在这一行的后面请问如何实现?[

vim下的文件处理
找到匹配的一行 其中包含ABC 
然后复制这一行 把ABC改成EFG 放在这一行的后面
请问如何实现?

[解决办法]
[user3@RHEL6B tmp]$ cat test1.txt 
asdf111asdfadf
aaaaaaaABCbbbbbbbbbb
asdf111asdfadf
aaaaaaaABCbbbbbbbbbb

[user3@RHEL6B tmp]$ sed "/^.*ABC.*$/! s/^.*$//" test1.txt|sed "s/ABC/EFG/g" > test2.txt 
[user3@RHEL6B tmp]$ paste -d '' test1.txt test2.txt > test.txt
[user3@RHEL6B tmp]$ cat test.txt 
asdf111asdfadf
aaaaaaaABCbbbbbbbbbbaaaaaaaEFGbbbbbbbbbb
asdf111asdfadf
aaaaaaaABCbbbbbbbbbbaaaaaaaEFGbbbbbbbbbb

[user3@RHEL6B tmp]$ 

总算写出来了,虽然写得很菜
[解决办法]
使用vim:
:%s/^\(.*\)abc\(.*\)/&\r\1efg\2\r/g
[解决办法]

探讨
不会了,还没试出来,等脚本高手来帮你吧

热点排行