Chinaunix

标题: vi 插入问题,在线等,急。 [打印本页]

作者: ioling    时间: 2003-04-29 09:03
标题: vi 插入问题,在线等,急。
vi 如何在每一行,制定的位置插入特定符号。
如 1234566777888
     5555555555555
改为
    1234|566|777|888|
      5555|555|555|555|
谢谢!!
作者: ioling    时间: 2003-04-29 09:07
标题: vi 插入问题,在线等,急。
每一行都是由同一规律。
作者: ioling    时间: 2003-04-29 10:17
标题: vi 插入问题,在线等,急。
谢谢,很急!!
作者: socketstrem    时间: 2003-04-29 10:23
标题: vi 插入问题,在线等,急。
不明
作者: bmkui    时间: 2003-04-29 10:47
标题: vi 插入问题,在线等,急。
文本吗?
windows 下做不好吗?
我只在windows 下做过,然后上传。
用数据库的表来实现。
作者: lvgq2001    时间: 2003-04-29 10:53
标题: vi 插入问题,在线等,急。
:g/^..../s//&|/g插入第一个“|”,后面的参照此法作。
应该还有其他更好的工具来处理,本人才疏学浅只会此一法,
建议你到shell版去问一下。
作者: 云中飘    时间: 2003-04-29 11:56
标题: vi 插入问题,在线等,急。
太高深了,不知道,对不起
作者: muzx    时间: 2003-04-29 13:49
标题: vi 插入问题,在线等,急。
试试行不?
  1. sed 's:\([0-9]\{4\}\)\([0-9]\{3\}\)\([0-9]\{3\}\):\1|\2|\3|:' file
复制代码

作者: htldm    时间: 2003-04-29 13:53
标题: vi 插入问题,在线等,急。

  1. while read line
  2. do
  3. a=`echo $line|cut -c 1-4`
  4. b=`echo $line|cut -c 5-7`
  5. c=`echo $line|cut -c 8-10`
  6. d=`echo $line|cut -c 11-13`
  7. echo "$a|$b|$c|$d|" >;>; new.txt
  8. done< old.txt
复制代码

作者: forkson    时间: 2003-04-29 14:02
标题: vi 插入问题,在线等,急。
汗,我还没开始学SHELL,不过快了
作者: ioling    时间: 2003-04-29 15:37
标题: vi 插入问题,在线等,急。
谢谢大家,已经用awk解决问题。
awk '{print substr($0,1,4)"|"substr($0,5,3)"|"substr($0,8,3)"|"substr($0,11,3)"|"}' aaa.txt >;bbb.txt
作者: muzx    时间: 2003-04-29 20:31
标题: vi 插入问题,在线等,急。
还有更简单的:
  1. sed  's:\(....\)\(...\)\(...\)\(...\):\1|\2|\3|\4|:' <a.txt >;b.txt
复制代码





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