linux – 用于sed替换的转义文件名
发布时间:2020-12-14 01:36:35 所属栏目:Linux 来源:网络整理
导读:我怎样才能解决这个问题: abc="a/b/c"; echo porc | sed -r "s/^/$abc/"sed: -e expression #1,char 7: unknown option to `s' 变量$abc的替换是正确完成的,但问题是$abc包含斜杠,这会混淆sed.我可以以某种方式逃脱这些斜线吗? 解决方法 GNU manual for se
我怎样才能解决这个问题:
abc="a/b/c"; echo porc | sed -r "s/^/$abc/" sed: -e expression #1,char 7: unknown option to `s' 变量$abc的替换是正确完成的,但问题是$abc包含斜杠,这会混淆sed.我可以以某种方式逃脱这些斜线吗? 解决方法
GNU manual for
sed 声明“在任何给定的s命令中,/字符可以被任何其他单个字符统一替换.”
因此,只需使用另一个字符而不是/,例如:: abc="a/b/c"; echo porc | sed -r "s:^:$abc:" >请勿使用可在输入中找到的字符.我们可以使用:上面,因为我们知道输入(a / b / c /)不包含:. >如果使用“”,Bash将特别解释一些字符,例如`(用于内联执行),! (用于accessing Bash history),$(用于访问变量). abc="a/b/c"; echo porc | sed 's!^!'"$abc"'!' (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |