コマンド文字列の適切な引用に失敗した後、次のように作業ディレクトリにある.jpgファイルに対して識別コマンドを発行しました。そのファイルの名前には、一重引用符および/または二重引用符を含めることができます。
for f in *.jpg; do
xterm -e bash -c "identify -verbose \"${f/\"/\\\"}\" | less"
done
しかし、文字列置換構造を使用した変数拡張はPOSIXと互換性がないことに気づきました。
それでは、一重引用符と二重引用符を使用して文字列に拡張できるコマンドライン引数を引用する方法は何ですか?上記のコマンドのPOSIX互換構文は何ですか?
ベストアンサー1
ファイル名をコマンド文字列の引数として渡すことができます。
for f in *.jpg; do
xterm -e bash -c 'identify -verbose "$1" | less' bash "$f"
done