これは簡単なことですが、私の記憶では、シェルスクリプトを作成するときに、二重引用符を使用すると、グロブと変数を拡張できます。
しかし、次のコードでは:
#!/bin/sh
echo *.sh
echo "*.sh"
echo '*.sh'
echo $LANG
echo "$LANG"
echo '$LANG'
この結果が得られました:
bob.sh redeployJboss.sh
*.sh
*.sh
en_US.utf8
en_US.utf8
$LANG
したがって、シングルクォートはグロブと変数の拡張を防ぎますが、ダブルクォートは変数の拡張のみを許可し、グロブは許可しませんか?
任意の引用パターンでグロブできますか?
承認された回答:
正解です。グロビングは一重引用符でも二重引用符でも機能しません。ただし、二重引用符で囲まれた文字列を使用してグロビングを補間することはできます。
$ echo "hello world" *.sh "goodbye world" hello world [list of files] goodbye world