Chinaunix

标题: vi [打印本页]

作者: cheungjustin    时间: 2009-12-16 23:08
标题: vi
請問VI怎么可以實現在每一行上面都加兩行,謝謝!!

比如

1111
2222
3333
4444

每行都加
aaa
bbb


aaa
bbb
1111
aaa
bbb
2222
aaa
bbb
3333
aaa
bbb
4444


這樣子,謝謝!
作者: cheungjustin    时间: 2009-12-17 17:46
标题: 回复 #1 cheungjustin 的帖子
莫非真的没有办法实现??
作者: yuio654    时间: 2009-12-17 20:49
用正则

这个事情sed或者awk干起来更顺手
作者: cheungjustin    时间: 2009-12-18 09:53
标题: 回复 #3 yuio654 的帖子
呵呵,具体用sed要怎么弄呢,谢谢!
作者: cheungjustin    时间: 2009-12-18 10:18
呵呵,目前试了两张方法

1.awk

#more text
111
222
333
#awk  \'{printf \"aaa\\nbbb\\n\"1;}’ text >new


2.vi

:%s/^/aaa\\rbbb\\r/
作者: Perl_Er    时间: 2009-12-18 10:44
  1. open(INPUT,\"filename\") or die \"$!\";
  2. open(OUTPUT,\">filename\") or die \"$!\";
  3. while(<FH>){
  4.      print OUTPUT;
  5.      print OUTPUT aaaaaa,\"\\n\";
  6.      print OUTPUT bbbbbb,\"\\n\";
  7. }
  8. close INPUT;
  9. close OUTPUT;
复制代码





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2