在 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"