Awk函数使用与技巧详解
1. 位操作与字符串转换
在Awk中,位操作和字符串转换是常见的操作。下面是一段代码示例,展示了如何将二进制数转换为字符串,并进行位运算:
while ((length(data) % 8) != 0)
data = "0" data
return data
}
BEGIN {
printf "123 = %s\n", bits2str(123)
printf "0123 = %s\n", bits2str(0123)
printf "0x99 = %s\n", bits2str(0x99)
comp = compl(0x99)
printf "compl(0x99) = %#x = %s\n", comp, bits2str(comp)
shift = lshift(0x99, 2)
printf "lshift(0x99, 2) = %#x = %s\n", shift, bits2str(shift)
shift = rshift(0x99, 2)
printf "rshift(0x99, 2) = %#x = %s\n", shift, bits2str(shift)
}
运行该程序会得到如下输出:
$ gawk -f testbits.awk
123 = 01111011
0123 = 01010011
0x99 = 10011001
compl(0x99) = 0xffffff66 = 11111111111111111111111101100110
lsh
超级会员免费看
订阅专栏 解锁全文
11万+

被折叠的 条评论
为什么被折叠?



