|
发表于 2007-8-9 21:36:45
|
显示全部楼层
改一下:
cat SRCFILE | grep -Eo "\[\w{1,}\]" | tr -d "[]" | sed 'N;s/\n/ /g'
以上面的例子,在这里可以得到正确输出:
13342632518 aa40010abc
grep不接受-o的话,您用的莫非不是Linux而是其它类Unix系统么?改成egrep不行,因为egrep等效于grep -E,但不能代替-o,-o的意义是只显示匹配的那部分字段,或许您可以从man手册中找到其它可代替的选项。
tr -d "[]" | sed 'N;s/\n/ /g',前句用于删除输出中的中括号,后句用于把本来两行的输出合并成一行。 |
|