最近ざっくりと調べるのに良く使うのは tree コマンド
図式化してくれてみやすいです。
オプション:サイズ(h)ディレクトリのみ(d)シンボリックリンク(l)で指定
$ tree -hdl
.
└── [4.2K] node_modules
├── [ 238] abab
│ └── [ 136] lib
├── [ 476] acorn
│ ├── [ 204] bin
│ ├── [ 204] dist
│ └── [ 714] src
│ ├── [ 102] bin
│ ├── [ 306] loose
│ └── [ 102] walk
:
:
オプションはいろいろあるので、man treeで調べると面白いかも。
よく使いそうなのは
| オプション | 機能 |
|---|---|
| --help | ヘルプ |
| -a | 隠しファイルやフォルダも全て表示 |
| -d | ディレクトリのみ表示 |
| -l | シンボリックリンクを表示 |
| -f | 相対パスを表示 |
| -h | ファイルサイズを表示 |
| -u | オーナーを表示 |
| -g | グループを表示 |
でも、treeが使えないときもある。
そうなると使うのは find このコマンドは使い慣れると便利です。
オプション:ディレクトリ(d)とシンボリックリンク(l)指定したlsリスト
find . \( -type d -or -type l \) -ls
コマンドls -laで出すような詳細な情報を得られます。
ちなみに、シンボリックリンクのリストがほしければ
find . -type l -ls
環境移植するようなとき、シンボリックリンクの一覧がほしいとか、
新しい環境にシンボリックリンクを一気にかけるようなシェルがほしいとかそんなとき、
findとawkを使ってみよう。
find . -type d -ls | awk '{print "ln -s ",$13,$11}'