sed命令帮助。如何用关键字替换当前工作目录的完整路径
我目前正在使用“sed”命令(如下),该命令搜索单词{{Title}},并将其替换为当前工作目录${PWD}.*/}/ 如何修改上述“sed”命令以适用于当前工作目录的完整路径sed命令帮助。如何用关键字替换当前工作目录的完整路径,sed,Sed,我目前正在使用“sed”命令(如下),该命令搜索单词{{Title}},并将其替换为当前工作目录${PWD}.*/}/ 如何修改上述“sed”命令以适用于当前工作目录的完整路径 任何帮助都将不胜感激 更改s命令以使用不属于路径的分隔符。通常,路径名中不允许使用:,因此可以安全地在此处使用,而不是/,例如,而不是: s/expression/$PWD/ s/expression/$PWD/ 使用 s:表达式:$PWD: $PWD而不是${PWD##*/}?当我这样做时,我得到以下消息:sed:-e
任何帮助都将不胜感激 更改
s
命令以使用不属于路径的分隔符。通常,路径名中不允许使用:
,因此可以安全地在此处使用,而不是/
,例如,而不是:
s/expression/$PWD/
s/expression/$PWD/
使用
s:表达式:$PWD:
$PWD
而不是${PWD##*/}
?当我这样做时,我得到以下消息:sed:-e expression#1,char 14:s的未知选项当我简单地使用PWD时,它实际上用它代替PWD而不是完整路径。它是bash脚本的一部分。是的,它是bash脚本的一部分。这工作正常。还有一个旁注:这个字符{必须转义,因为它也是一个表示正则表达式组的正则表达式字符。@GeorgeVasiliou因为sed
默认使用BRE,它实际上是相反的:{
不应该转义,因为BRE语法是\{i,j\}
。只有使用-E
或-r
激活ERE时,才应转义它们。啊,是的,我确实使用了-r。感谢您澄清这一点。
s/expression/$PWD/
s:expression:$PWD: