将Bash变量中的路径扩展为sed表达式

苹果酸

我想问这条线怎么了?

sed -i "/$PWD/a\ Hello World" historia.txt

当我在其中使用它时,''除了""它在起作用,当然没有扩展变量。

贾尼斯(Janis)

问题在于路径包含/字符,并且您在sed替换参数分离中也使用了该字符最简单的解决方案是在中使用另一个分隔符sed,一个分隔符不会出现在您的数据中(例如|,或者在我的下一个示例中为逗号):

sed -i "s,${PWD},a Hello World," historia.txt

编辑:上面解释了您的问题(斜杠冲突)。但是,我看到(现在)您不是在替代行而是在匹配行之后添加一行。在这种情况下,您可以通过来避免PWD路径中的斜线sed,例如:

sed -i "/${PWD//\//\\/}/a Hello World" historia.txt

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

简化sed表达式以将文件中的行的一部分保存到变量中(bash)

如何将sed与文件路径变量以及regex回调和算术表达式一起使用

使用带有正则表达式的Sed将结果保存到变量中

未应用正则表达式和变量扩展时,如何将 sed 命令中断到嵌套部分?

Sed中的双引号和变量-未知表达式?

在bash中结合表达式和参数扩展

将Lambda表达式存储为变量

如何将表达式转换/评估为变量

将查找变量设置为表达式的值

如何将正则表达式捕获组存储为vim脚本中的变量?

通过表达式通过变量将SSIS包中的昨天日期设置为

无法将正则表达式模式表单文件解析为 powershell 中的变量

如何将表达式的结果分配给bash中的变量

如何将BASH变量插入PERL正则表达式替换中?

将正则表达式匹配绑定到bash中的变量

正则表达式模式在AWK中为变量

Shell (Bash) 参数扩展表达式

bash:在for表达式中声明局部变量

bash中的正则表达式变量

将表达式存储在SQL中的变量中

Bash sed替换双美元符号$$扩展正则表达式

如何将变量插入'then'表达式中

将变量注入带引号的表达式中

将Lambda表达式存储到变量中?

将 html 表达式存储在变量中(Angular)

将布尔表达式的结果存储到变量中

将变量的内容放入表达式中

将变量粘贴到正则表达式中

正则表达式:如何将域名的正则表达式扩展为包含abcd类型的域?