我有一个文件如下:
10temp3
20/temp4
28 temp 5
我使用以下命令拆分行并获取行中的最后一个数字。
awk -F"temp" '{print $NF}' temp3
我得到的输出是:
> awk -F"temp" '{print $NF}' temp3
10temp3
20/temp4
28 temp 5
令人惊讶的是,如果我使用nawk,我将获得预期的输出。
> nawk -F"temp" '{print $NF}' temp3
3
4
5
>
我可以知道原因吗? awk不支持提到的字符串作为分隔符吗?
答案 0 :(得分:2)
确实Solaris awk
只考虑单个字符。我想这可能是由于传统,以及nawk
运送的原因。
-F
开关非常特别:它取你所引用字符串的第一个字符,并丢弃其余字符,因此t
仍然存在---代表“查找标签作为字段分隔符“。