たとえば、サブシェル出力をカプセル化するために引用符を使用する必要があるとします。
DATA="$(cat file.hex | xxd -r)"
ただし、次のようにネストする必要があります。
DATA="$(cat file.hex | xxd -r | tr -d \"$(cat trim.txt)\")"
一重引用符は内部変数を拡張しないため使用できません。エスケープされた引用符は手動テキストとして扱われるため機能しません。
この問題にどのように対処する必要がありますか?
ベストアンサー1
サブシェル内の引用符をエスケープする必要はありません。現在のシェル説明しません(事実$(
から〜まで何も説明しません)
)。サブシェル上記の参照内容はまったくわかりません。
変数に値を割り当てるときにサブシェルを引用することも不要ですman bash
。詳細についてはをご覧ください。