在 Makefile 中,我运行了一个 shell 命令,我想将一个 NULL 字节作为参数传递。以下尝试失败:

echo $(shell /bin/echo -n $$'\x00' | ruby -e "puts STDIN.read.inspect") 

它产生:
echo "$\\x00" 

相反,我期望:
echo "\u0000" 

如何正确转义这样的 NULL 字节?

请您参考如下方法:

echo默认情况下禁用反斜杠转义的解释。您需要提供-e选项以启用它。

$ echo -ne "\x00" | ruby -e "puts STDIN.read.inspect" 
"\u0000" 


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!