countries.data
是测试数据
4.2.2.awk
是测试脚本
当我输入
awk -f 4.2.2.awk countries.data
没有反应
但是我这样输入
awk '
# info - print information about country
# usage: info country-name
BEGIN {
FS = "\t"
}
$1 ~ /'$1'/ {
printf("%s:\n", $1)
printf("\t%d million people\n", $3)
printf("\t%.3f million sq. mi.\n", $2/1000)
printf("\t%.1f people per sq. mi.\n", 1000*$3/$2)
}' countries.data
会出现正常的结果。
问题:
1.这两种输入有什么区别吗?
2.$1 ~ /'$1'/
, /'$1'/
不明白含义。
找了半天,并没有找到答案。。。
1
fcicq 2016-05-27 00:28:16 +08:00 1
第二种方式下引号的转义真的正确吗? 然后注意 mawk / gawk 有可能有细节区别. 这个地方味道确实不好, 不应该硬去追究的.
|
2
feather12315 OP @fcicq thanks 。 是对的,可以输出。 这是 gawk 。 来源于 [awk 程序设计语言]( https://github.com/wuzhouhui/awk) 中 4.2 的第二个程序。 当初看到这里,很困惑,就想搞明白。
|