llgd.net
当前位置:首页 >> Awk 空格 >>

Awk 空格

使用转义符就可以了,\+space

awk -F" *"当 -F后面跟着一个以上字符时,这个字符串被当成正则表达式,所以" *"两个空格跟一个星号表示用一个或多个空格做分隔符

用[]括号起来,请采纳

我不太明白你的问题,如果一二列是空格分开,三四列是tab分开,那么你怎么知道列数是一二三四的?所以我觉得你最好把原始数据列出,同时说出你的要求,这样别人比较好帮你。 比如数据为 1 2 3:4 a b:c:d 象你说的一二列是空格分,三四列是:...

echo "aa bb cc dd" | awk '{print $NF}'NF (Number of Fields),字段数目,这是awk内置变量。因此$NF即为最后一个字段的值。 awk默认的字段分隔符为空白符(包括空格和TAB)。

echo " baby go " | awk '{sub("^ *","");sub(" *$","");print}'使用sub替换,结合正则中的限位符^和$即可。 ^匹配字符串开头位置,$匹配字符串结尾位置。 结尾的空格有没有去掉,直接这样看不出。可以使用下面的方式测试:

cat filename | awk -F" " '{print $2}' 双引号里面空2各就可以了。

awk ‘{ a=$1;b=$2;gsub("\\*"," ",a);print a,b}' test.log 替换*号的时候需要转义,转义是\,但是\也需要转义所以就需要两个\\

空格和冒号(一个或多个)都可以用作字段分隔符。 比如文本格式为: Spring::123 456::AirAsiaGo:haha 分割出的字段就是 Spring 123 456 AirAsiaGo haha

1 echo " baby go " | awk '{sub("^ *","");sub(" *$","");print}' 使用sub替换,结合正则中的限位符^和$即可。 ^匹配字符串开头位置,$匹配字符串结尾位置。 结尾的空格有没有去掉,直接这样看不出。可以使用下面的方式测试:

网站首页 | 网站地图
All rights reserved Powered by www.llgd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com