在bash变量中应用sed并将其分配给另一个变量

在bash变量中应用sed并将其分配给另一个变量,bash,sed,Bash,Sed,我有: 因此,有一个带有文件夹名的json文件。但是json要求strings在“中。使用bash读取json返回我”,我想删除它 将其传递给变量,然后应用sed无效。正确的语法是什么 谢谢大家! Posix外壳需要: MY_FOLDER=`jq '.results_folder' ./conf.json` FOLDER_WITHOUT_QUOTES=$MY_FOLDER | sed 's/"//g' python my_code.py > $FOLDER_WITHOUT_Q

我有:

因此,有一个带有文件夹名的
json
文件。但是
json
要求
strings
中。使用bash读取json返回我
,我想删除它

将其传递给变量,然后应用
sed
无效。正确的语法是什么


谢谢大家!

Posix外壳需要:

MY_FOLDER=`jq '.results_folder' ./conf.json`

FOLDER_WITHOUT_QUOTES=$MY_FOLDER | sed 's/"//g'

python my_code.py > $FOLDER_WITHOUT_QUOTES/log.log
使用Bash,您可以使用here文档语法:

FOLDER_WITHOUT_QUOTES="$(printf '%s\n' "$MY_FOLDER" | sed 's/"//g')"

注意:使用
$(命令)
语法,不要使用可读性较差且不能很容易嵌套的反引号。

为此,您可以使用
jq-r
。@oguzismail谢谢。我是说Posix。答案已更新。
FOLDER_WITHOUT_QUOTES=$(sed 's/"//g' <<< "$MY_FOLDER")
FOLDER_WITHOUT_QUOTES=${MY_FOLDER//\"}