bash:用变量

时间:2017-05-08 10:20:07

标签: bash

我有一个包含带引号的字符串的变量:

echo $variable
It's my variable

为了能够将此变量用作ffmpeg的图例,我需要在引号前添加5个反斜杠:

variable="It\\\\\'s my variable"

我对我应该使用什么语法感到困惑,因为反斜杠和引号在bash替换命令中具有非常具体的含义。我试过这个:

variable=`echo $variable | tr "'" "\\\\\'"`

但它不会产生正确的结果

2 个答案:

答案 0 :(得分:3)

你可以自己使用一些单引号来告诉bash不要解释那些斜杠:

OnCreateView

编辑:要转换现有变量,请使用:

variable="It"'\\\\\'"'s my variable"

答案 1 :(得分:0)

这样可以正常使用,并且没有sed:

的问题
echo "$v" |perl -pe "s/'/\x5c\x5c\x5c\x5c\x5c'/g"

PS:\x5c是斜杠\

的ascii代码