【发布时间】:2021-05-10 03:56:59
【问题描述】:
考虑使用以下程序过滤0x10 - 0xa0 范围内的十六进制数。
echo -e "0x10\n0xff\n0x16\n0x80\n0x50" | awk '$1 >= 0x10 && $1 <= 0xa0 { print $0 }'
如果我使用十进制等效值替换所有数字,但程序会正常工作,但使用十六进制数字会失败。
我使用的 awk 版本不支持 --non-decimal-data - 这是 Debian 10 Buster 附带的默认版本。
如何使用十六进制数字进行比较?
【问题讨论】:
-
十六进制数的取值范围是多少? 0x00 到 0xff 或更大?