自分のやりたい仕事を手に入れるのは難しいようです。基本的に、いくつかの引用符と \ 文字を含む文字列が割り当てられた一連の変数があります。json は python ダンプ メソッドを使用した引用符を嫌うため、引用符を削除して json doc 内に埋め込みたいと考えています。
簡単だと思いました。文字を簡単に削除する方法を決定し、変数置換用の単純な 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
これは機能しません (インデックスの束をスローするか、何もスローしません)。私は、またはその他の bash 置換変数について十分に知らないだけだと確信していarg
ますeval
。
しかし、基本的には、同じ問題を抱えた別の変数セットに対してこれを実行したいと考えています。そこでは、引用符と、ついでに "\" も削除します。
どんな助けでも大歓迎です。