问题1:
模式:
test_$(whoami)
变量:
var1=$(pwd)
我想找到模式并将整行替换为 var1
sed -i "s/.*test_$(whoami).*/$var1/" test.txt
它给了我 sed: -e 表达式 #1, char 28: 's' 的未知选项
问题 2。
模式:
#####Insert here#####
要插入的内容:包括$var1/file_$(whoami).txt
我想找到符合模式的行(完全匹配),并在后一行插入内容
sed -i "s/#####Insert here#####/include $var1/file_$(whoami).txt" test.txt
也不行
有人可以帮忙吗?
最佳答案
回复问题1。使用不同的正则表达式分隔符:
sed -i.bak "s~^.*test_$(whoami).*$~$var1~" test.txt
因为 $var1
可以包含 /
关于regex - 找到一个模式并替换整行&找到一个模式并插入到后面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19387410/