【发布时间】:2013-11-06 16:03:05
【问题描述】:
我有一个包含此命令的生成文件:
sed '/^$/d'
当我运行它时,我得到了:
sed '/^d'
sed: -e expression #1, char 3: unterminated address regex
看起来它解释了美元符号,我怎样才能防止这种情况发生?
【问题讨论】:
标签: sed makefile pattern-matching
我有一个包含此命令的生成文件:
sed '/^$/d'
当我运行它时,我得到了:
sed '/^d'
sed: -e expression #1, char 3: unterminated address regex
看起来它解释了美元符号,我怎样才能防止这种情况发生?
【问题讨论】:
标签: sed makefile pattern-matching
使用$$,它变成$。见Special Characters in a Makefile
生成文件:
sed '/^$$/d'
learts@Fastidio:~/tmp$ make
sed '/^$/d'
【讨论】:
您必须将配方中的所有美元符号加倍,否则 make 会将它们视为引入了一个 make 变量:
sed '/^$$/d'
如果您搜索“美元符号 makefile”或类似内容,您将找到数十个甚至数百个几乎这个确切问题的答案。
【讨论】: