
ループ変数の置換後にグローバルに拡張されるように、次の例をどのように変更できますか?
for i in a b c
do echo $i/*.txt
done
更新:これは一般的に機能しますが、set -f
私が見ているスクリプトでは完了しました。
答え1
コードを書く場合は、bash
「set -f」を使用してワイルドカードをオフにし、「set +f」を使用して設定すると、目的の結果が得られます。
#!/bin/bash
for i in a b c
do
set -f
Z=$i/*.txt
echo $Z
set +f
echo
echo "Does it expand?"
echo $Z
done