shell - 如何在 Makefile 中将 NULL 字节转义为 shell 命令的参数

标签 shell null makefile escaping

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

关于shell - 如何在 Makefile 中将 NULL 字节转义为 shell 命令的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17105225/

相关文章:

unix - 如何从一行文本中选择给定的列?

bash - 将嵌套 bash 脚本减少为单个文件/mpirun 命令

java - 如何杀死从 CentOS 目录运行的进程?

java - java 访问数组

openssl - 我可以使用 git 克隆后出现的文件吗?

linux - 在 shell 脚本中使用 chmod 命令

date - 如何将带有时间(日期)类型的文件加载到 Hive 表中?

c++ - 如何用 Qt 插入空值?

c++ - 为什么cmake不在makefile中加入库链接命令?

c++ - 几个 Makefile 问题