原帖由 Edengundam 于 2006-12-27 23:53 发表
$0 ==> 某个字符串
这个字符串是awk里面没有定义的变量, 就是个空串.
$echo "$0"
bash
$echo "aaa bbb" | awk "{print $0 \"ABCD\"}" # the same with n ...
原帖由 月波无漾 于 2006-12-28 00:56 发表
复制代码
- $ echo "aaa bbb" | awk "{print $0 \"ABCD\"}"
- -0ABCD
- $$ echo "aaa bbb" | awk "{print -sh \"ABCD\"}"
- -0ABCD
这个-0怎 ...
原帖由 網中人 于 2006-12-28 01:20 发表
你的 awk 是甚麼版本?
awk --version
原帖由 Edengundam 于 2006-12-28 07:22 发表
'-'算术运算, sh当成了数值变量, 初始值 0
复制代码
- $ echo aab | awk "BEGIN{sh = 100} {print -sh}"
原帖由 月波无漾 于 2006-12-28 13:28 发表
谢谢,似乎正是你说的那样.
可不可以这样理解呢?对于一个awk之前未定义的变量,默认都是当成NULL,然后进行算术运算,就类型转换成数值类型的的默认值0了?
BTW:我这里用的HP UX,连看个命令的版本都不知道怎么看的 ...
欢迎光临 Chinaunix (http://bbs.chinaunix.net/) | Powered by Discuz! X3.2 |