Linuxのforループにおけるアスタリスク(*)の意味

Linuxのforループにおけるアスタリスク(*)の意味

次の .ksh スクリプト スニペットがあります:

for type in *
do 
    cd ${DATA_HOME}/$type
    for mid in *
        do
            #doing something here
        done
done

私の質問*: では、上記のような for ループで使用されるアスタリスクは具体的に何を意味するのでしょうか?

答え1

「*」は現在のディレクトリ内のすべてのファイルを意味します。これは、引用符で囲まれたファイル名/ディレクトリ名のスペース区切りリストと同等です (少なくとも bash では、ksh も同様だと思います)。

この種のことは自分で確認することができます。

echo *

上記のスクリプトは、スペースを含むファイル/ディレクトリの処理を発行する可能性があります。

関連情報