【发布时间】:2012-08-09 17:17:43
【问题描述】:
我有一个文件如下:
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 不支持作为分隔符提到的字符串吗?
【问题讨论】:
-
如果行中的最后一个数字是您想要的全部,
sed 's/.*temp *//' file可能是更好的选择。 -
我想在这里探索一下 awk 的行为。我知道这可以通过使用 sed 和 perl 等其他工具来完成。