分页: 1 / 1
请教如何截取文件
发表于 : 2011-03-10 10:08
由 chenjun
请教一个问题,如何截取如下文件
代码: 全选
192.168.0.166.54800 192.168.0.167.80
192.168.0.166.49477 192.168.0.167.21
让他输出成如下文件
代码: 全选
192.168.0.166 192.168.0.167 80
192.168.0.166 192.168.0.167 21
大伙帮忙看看,能实现不
发表于 : 2011-03-10 12:07
由 chenjun
问题解决了,有两种方法可以实现预期的效果
方法一:
代码: 全选
sed 's/\.[0-9]\+//4;s/\./ /7'
方法二:
代码: 全选
awk -v FS="[.| ]" '{sub(FS $5,"");sub(FS $NF," "$NF)}1'
我原本是想参考别人给的例子,自己来截取文件如
代码: 全选
Nov 20 13:34:09.4438 192.168.0.166.54800 192.168.0.167.80:
成为
代码: 全选
Nov 20 13:34:09.4438 192.168.0.166 192.168.0.167 80
但发现功力不够,还是通过其他高手的帮忙得以解决
代码: 全选
sed 's/\.[0-9]*//5; s/\.\([0-9]*\):$/ \1/'
自己刚接触shell命令这块,还不是太熟,上面具体如何实现的我还不能解释的太清楚,但发现awk,sed,cut这些命令真的很神奇,自己要好好学习一下
发表于 : 2011-03-10 12:42
由 leo
羡慕一下,目前还没有玩shell的功力。
发表于 : 2011-03-10 19:57
由 wkx9dragon
对于这个例子,这条命令就可以了。
sed -e "s/\.[0-9]\{5\}//;s/\./ /7"