我在做 P = $ {P // \ “/ \\”}
我的期望是
"stackoverflow" is awesome
更改为
\"stackoverflow\" is awesome
[编辑]
的更新语法仍未运行#!/bin/sh
erroMsg=": Parse Error: line 2:122 mismatched input 'where' expecting EOF near '\"201305%\"'"
echo $errorMsg
echo ${errorMsg//\"\\\"}
echo $errorMsg
输出是 test.sh:4:test.sh:错误替换
答案 0 :(得分:14)
参见示例:
$ P='"stackowerflow" is awesome'
$ echo $P
"stackowerflow" is awesome
$ echo ${P//\"/\\\"}
\"stackowerflow\" is awesome
要转义\
,您必须使用\\
。
要转义"
,您必须使用\"
。
要逃避\"
,您必须使用两者的组合:\\\"
。
答案 1 :(得分:1)
几乎正确:P=${P//\"/\\\"}
- 您错过了\