我似乎很难得到我想要的工作。基本上,我有一系列变量,这些变量分配有一些引号和 \ 字符的字符串。我想删除引号以将它们嵌入到 json 文档中,因为 json 讨厌使用 python 转储方法的引号。
我想这会很容易。只需确定如何轻松删除字符,然后为变量替换编写一个简单的 for 循环,它并没有那样工作。
这就是我想要做的。
有一个名为“MESSAGE23”的变量,它包含以下“com.centrify.tokend.cac”,我想去掉引号,这对我来说很容易,一个简单的echo $opt | sed "s/\"//g"
. 当我从命令行执行此操作时:
$> MESSAGE23="com."apple".cacng.tokend is present"
$> MESSAGE23=`echo $MESSAGE23 | sed "s/\"//g"`
$> com.apple.cacng.tokend is present
这行得通。我得到格式正确的字符串。
然后当我试图把它扔进一个循环时,所有的地狱都松了。
for i to {1..25}; do
MESSAGE$i=`echo $MESSAGE$i | sed "s/\"//g"`
done
这不起作用(要么抛出一堆索引,要么什么都没有),而且我很确定我对arg
oreval
或其他 bash 替换变量了解不够。
但基本上我想对另一组具有相同问题的变量执行此操作,其中我去掉了引号,顺便也去掉了“\”。
任何帮助将不胜感激。