如何得到想要的结果

aae2008_lbh
如何得到想要的结果

test.log文件中内容为
aaa bbb ccc ddd a|a|a
一共为5列
我想得到的结果为:
aaa空格a|a|a
结构应该是:第一列+空格+最后一列  
在实际的数据中前面的aaa,bbb,ccc都是不定的循环的数据,但是只有最后一列的a|a|a是固定的,所以要却最后一列
  
小弟是初学者,请哪位高人帮忙解答一下,小弟不胜感激!!!!

superline007
回复 #1 aae2008_lbh 的帖子

awk '{print $1,$5}' test.log

walkerxk
sed 's/ .* / /'
sed和awk用过了,下一个不能用了[img]http://bbs.chinaunix.net/images/smilies/icon_mrgreen.gif[/img]

walkerxk
补充一个cut的:cut -d/  -f1,5 a

aae2008_lbh
回复

我想取的不是$5,在我建的测试文档中是第5列,我想取的是最后一列,也就是说倒数第一列

liaosnet
回复 #3 walkerxk 的帖子

他说是最后一个..

awk '{print $1,${NF}}' test.log

walkerxk
最后一个的话可以用sed那句,第五个的话可以用cut那句。

walkerxk
[quote]原帖由 [i]liaosnet[/i] 于 2008-6-19 21:19 发表 [url=http://bbs.chinaunix.net/redirect.php?goto=findpost&pid=8623072&ptid=1164994][img]http://bbs.chinaunix.net/images/common/back.gif[/img][/url]
他说是最后一个..

awk '{print $1,${NF}}' test.log [/quote]
我的sed本来就是最后一个,cut弄错了。

liaosnet
回复 #8 walkerxk 的帖子

如果最后有个空格咧.....:mrgreen: :mrgreen:

luyi1983
呵呵 分隔符明确时 awk还是好用点的

walkerxk
[quote]原帖由 [i]liaosnet[/i] 于 2008-6-19 21:50 发表 [url=http://bbs.chinaunix.net/redirect.php?goto=findpost&pid=8623197&ptid=1164994][img]http://bbs.chinaunix.net/images/common/back.gif[/img][/url]
如果最后有个空格咧.....:mrgreen: :mrgreen: [/quote]
s/ /+$//
[img]http://bbs.chinaunix.net/images/smilies/icon_mrgreen.gif[/img]

springwind426
bash:

[code]
s="aaa bbb ccc ddd a|a|a"
echo ${s%% *} ${s##* }
[/code]

liaosnet
回复 #12 springwind426 的帖子

:mrgreen: :mrgreen: :mrgreen: