Linuxでは、すべてのフォルダ/サブフォルダ名を見つけてテキストファイルにリダイレクトしたい
私は試した ls -alR > list.txt
が、すべてのファイルとフォルダーを提供する
find
を使用できます
find . -type d > output.txt
またはtree
tree -d > output.txt
tree
、システムにインストールされていない場合。
ubuntu
を使用している場合
Sudo apt-get install tree
mac os
を使用している場合。
brew install tree
find . -type d > list.txt
現在のパスの下にあるすべてのディレクトリとサブディレクトリをリストします。現在のパス以外のパスにあるすべてのディレクトリを一覧表示する場合は、.
他のパスへ。
特定のディレクトリを除外する場合は、否定的な条件でそれらを除外できます。
find . -type d ! -name "~snapshot" > list.txt
他の回答にリストされているfind
と同様に、より良いシェルは再帰的なグロブとグロブの一致のフィルタリングの両方を許可するため、たとえばzsh
では...
_ls -lad **/*(/)
_
...必要なすべての「-l」の詳細を保持しながら、すべてのディレクトリを一覧表示します。そうでなければ、次のようなものを使用して再作成する必要があります...
_find . -type d -exec ls -ld {} \;
_
(他の回答が示すほど簡単ではありません)
Findの利点は、シェルからより独立していることです。C/ C++プログラムなどからのsystem()
呼び出しに対しても、より移植性があります。