Regex 需要将搜索模式动态传递给sed

Regex 需要将搜索模式动态传递给sed,regex,sed,Regex,Sed,我试图在s/SearchPattern/ReplacePattern/操作中将搜索模式动态地传递给sed,但它没有像使用直接parttern值的相同操作那样使用可变内容。 这是使用过的代码 # assuming node='pcrf' sed -e '/"$node"/s/^/#/' inittab > inittab.new && mv inittab.new inittab 同样的搜索,但使用litterla模式正在工作 sed -e '/pcrf/s/^/#/' i

我试图在
s/SearchPattern/ReplacePattern/
操作中将搜索模式动态地传递给sed,但它没有像使用直接parttern值的相同操作那样使用可变内容。 这是使用过的代码

# assuming node='pcrf'
sed -e '/"$node"/s/^/#/' inittab > inittab.new && mv inittab.new inittab
同样的搜索,但使用litterla模式正在工作

sed -e '/pcrf/s/^/#/' inittab > inittab.new && mv inittab.new inittab.
因此,请建议我如何在搜索中使用变量的内容。

尝试一下:

sed -e "/$node/s/^/#/" inittab >. ...
添加测试 以下是它的工作原理:

kent$  v=1

kent$  seq 15|sed "/$v/s/^/#/"  
#1
2
3
4
5
6
7
8
9
#10
#11
#12
#13
#14
#15

这是因为你必须使用双引号。否则,变量将不会展开。我只使用了双引号。请澄清我们必须在哪里使用双引号。
sed-e'…'
不是双引号。另外,您应该给出一些示例输入文件和所需的输出,否则这有点模糊。