Linux 带有硬编码的make文件中的sed命令$

Linux 带有硬编码的make文件中的sed命令$,linux,sed,makefile,special-characters,quoting,Linux,Sed,Makefile,Special Characters,Quoting,我的makefile中有一个sed命令,如下所示,该命令的目的是,它应该将字符串“listen$address”替换为“”,但结果是它将“listen$address”替换为“$address” 请提出解决方案。 我已经检查了很多帖子,但是有$被用作regex变量,在我的例子中,它需要被视为硬编码字符串用单引号括起sed命令,以避免: 通过转义$,您可以使用双引号: sed -e -i "s/listen \$address//" file 我会像这样保留$地址吗?不需要$$不需要$$。我用$

我的makefile中有一个sed命令,如下所示,该命令的目的是,它应该将字符串“listen$address”替换为“”,但结果是它将“listen$address”替换为“$address”

请提出解决方案。
我已经检查了很多帖子,但是有$被用作regex变量,在我的例子中,它需要被视为硬编码字符串

用单引号括起sed命令,以避免:

通过转义
$
,您可以使用双引号:

sed -e -i "s/listen \$address//" file

我会像这样保留$地址吗?不需要$$不需要$$。我用$和$$进行了测试,它需要$$,但保留单引号解决了问题。sed-e-I的/listen$$address/'文件。谢谢
sed -e -i 's/listen $address//' file
sed -e -i "s/listen \$address//" file