【发布时间】:2019-05-18 10:00:19
【问题描述】:
我想使用 xxd 将字符串转换为十六进制。
问题是它在十六进制末尾添加了一个“0a”。
命令:
echo "hello world" | xxd -p
输出:68656c6c6f20776f726c640a
预期:68656c6c6f20776f726c64(不含0a)
【问题讨论】:
标签: macos command-line-interface xxd
我想使用 xxd 将字符串转换为十六进制。
问题是它在十六进制末尾添加了一个“0a”。
命令:
echo "hello world" | xxd -p
输出:68656c6c6f20776f726c640a
预期:68656c6c6f20776f726c64(不含0a)
【问题讨论】:
标签: macos command-line-interface xxd
0x0a 是 ASCII 换行符的十六进制值。
echo 在末尾产生一个新行,所以你得到了尾随 0a。
为避免这种情况,请使用-n 参数:
echo -n "hello world" | xxd -p
或者,您可以使用printf:
printf "hello world" | xxd -p
【讨论】: