我最近花了一些时间尝试使用 bash 将一些数字作为字节写入管道(例如,10 作为 0xA
,而不是 0x310x30
)。不幸的是,我无法这样做,不得不将脚本重写为 Python。有什么方法可以在 bash 脚本中将数据作为字节而不是字符发送吗?
最佳答案
正如 chepner 所说,您可以输出任何值,例如:$'\012'。所以,一个简短的脚本:
convert() {
printf \\$(printf '%03o' $1)
}
convert 122 | od -bc
右边的打印会将十进制参数转换为八进制数,第二个打印将打印上面的八进制数...例如十进制 65 将转换为字节 'A'。
关于linux - 将数据作为字节发送到 bash 中的管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11128226/