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

时间:2014-09-09 09:42:15

标签: 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/^/#/' inittab > inittab.new && mv inittab.new inittab.

所以,请建议我,如何将变量的内容用于搜索。

1 个答案:

答案 0 :(得分:3)

尝试一下:

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