【发布时间】:2013-04-09 01:35:00
【问题描述】:
给定一个aaa0.bbb.ccc 格式的主机名,我想提取. 之前的第一个子字符串,在本例中为aaa0。我使用以下 awk 脚本来执行此操作,
echo aaa0.bbb.ccc | awk '{if (match($0, /\./)) {print substr($0, 0, RSTART - 1)}}'
虽然在一台机器上运行的脚本A 产生aaa0,但在机器B 上运行只产生aaa,最后没有0。两台机器都运行Ubuntu/Linaro,但A 运行较新版本的awk(gawk 3.1.8 版,而B 旧版awk(mawk 1.2 版)
一般来说,我在问,如何编写一个兼容的 awk 脚本来执行相同的功能......
【问题讨论】: