一部のディレクトリと一部のファイル(一部は非表示でドットで始まる)を含むフォルダがあります。
for d in *; do
echo $d
done
すべてのファイルとディレクトリを繰り返しますが、私はディレクトリだけを繰り返したいと思います。どうすればいいですか?
ベストアンサー1
ディレクトリにのみ一致するように末尾のスラッシュを指定できます。
for d in */ ; do
echo "$d"
done
シンボリックリンクを除外するには、continue
ループを使用して現在のアイテムがリンクであるかどうかをテストします。-L
シンボリックリンクとして認識するには、名前から末尾のスラッシュを削除する必要があります。
for d in */ ; do
[ -L "${d%/}" ] && continue
echo "$d"
done