これは簡単なことですが、私の記憶によれば、シェルスクリプトを実行するときに二重引用符を使用すると、ワイルドカードと変数を拡張できます。
しかし、以下のコードでは:
#!/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
一重引用符はワイルドカードと変数の拡張を防ぎますが、二重引用符は変数の拡張のみを許可し、ワイルドカードは許可しませんか?
使用できる引用パターンはありますか?
答え1
あなたは正しいです。ワイルドカードは一重引用符または二重引用符では機能しません。ただし、二重引用符で囲まれた文字列を使用してワイルドカードを挿入できます。
$echo "こんにちは世界" *.sh "世界こんにちは" Hello World [ファイル一覧] Goodbye World