Bash 如何删除字符串开头和结尾的双引号
我的字符串包含双引号,如下所示:Bash 如何删除字符串开头和结尾的双引号,bash,shell,sed,grep,Bash,Shell,Sed,Grep,我的字符串包含双引号,如下所示: "[{"clientid":"*", "identityzone":"*"}]" 我想使用set或grep删除开头和结尾的双引号,输出应如下所示: [{"clientid":"*", "identityzone":"*"}] 我使用了:sed-e's/\“//g',但是这会删除字符串中所有的“,您需要使用线锚 $ echo '"[{"clientid":"*", "identityzone":"*"}]"' | sed 's/^"//; s/"$//' [{
"[{"clientid":"*", "identityzone":"*"}]"
我想使用set
或grep
删除开头和结尾的双引号,输出应如下所示:
[{"clientid":"*", "identityzone":"*"}]
我使用了:
sed-e's/\“//g'
,但是这会删除字符串中所有的“
,您需要使用线锚
$ echo '"[{"clientid":"*", "identityzone":"*"}]"' | sed 's/^"//; s/"$//'
[{"clientid":"*", "identityzone":"*"}]
仅在行首匹配^“
”
仅在行尾匹配“$
”
- 您还可以使用
将它们组合为sed的//^“\\\\”$//g'
- 看
sed 's/^\"\(.*\)\"$/\1/g' <<<'"[{"clientid":"*", "identityzone":"*"}]"'
sed的//^\\”\(.*\)\“$//\1/g'sed-i.bak-E的//^”|“$//g”文件