オプションを使用して他のディレクトリ内のすべてのディレクトリを一覧表示するにはどうすればよいですか?

オプションを使用して他のディレクトリ内のすべてのディレクトリを一覧表示するにはどうすればよいですか?

/etc/たとえば、特定のディレクトリにない場合は、そのディレクトリにあるディレクトリだけを一覧表示したいと思います(隠しディレクトリを含む)。

隠しディレクトリを含むすべてのディレクトリを一覧表示するには、次のコマンドを使用します。

ls -d */ .*/

このコマンドを使用してリストを作成したいと思います/etc

ls /etc

これは可能ですが、最初のエントリと組み合わせてディレクトリだけを一覧表示したいと思います。

ls -d */ .*/ /etc

または

ls /etc -d */ .*/

動作しません。なぜ?

ベストアンサー1

*/.*/は直接渡された引数ではないため、動作しませんls。代わりに、シェルによって拡張されたグローバル変数なので、渡される現在のディレクトリに一致するファイル名のリストを提供します。ls

他のディレクトリに対応するものは/etc(例えば)

ls -d /etc/*/ /etc/.*/

シェルが中括弧拡張をサポートしている場合は、次のように簡潔に作成できます。

ls -d /etc/{,.}*/

おすすめ記事