Section Next | Prev


005 dtree - ディレクトリ構造のツリー表示

概要
指定されたディレクトリを起点として、それ以下の構造をツリー表示する。

スクリプトと解説 - [text]
#スクリプト解説
1#! /bin/bash #
2# directory tree #
3cd $1 指定されたディレクトリ(引数1)へ移動
4pwd 現在のディレクトリ名を表示
5find $PWD -type d -print | 現在のディレクトリ以下にある全ディレクトリを表示。
行末がパイプ(|)の場合、継続行となる
6sort -f | 英字大文字・小文字に関係なくソート
7sed -e "s,^$PWD,," \ 現在のディレクトリと同じ部分を削除
単なる引数の場合は継続行としてバックスラッシュ(\)が必要。
8        -e '/^$/d' \ 空行を削除
9        -e 's,[^/]*/\([^/]*\)$,+----\1,' \ 最下ディレクトリを抽出し「+---取出したディレクトリ名」に変換
例) /d1/d2 ===> /+--d2
10        -e 's,[^/]*/,| ,g' スラッシュを含む文字列を「|   」に置換

実行例
$ dtree ~
/home/ycos
+----.kde
|    +----Autostart
+----.ssh
+----bin
+----htdocs
|    +----abes
|    +----abo
|    |    +----cgi-bin
|    |    +----imgs
|    +----archive
|    +----bar_map
|    |    +----icons
|    |    +----kita
|    |    +----minami
|    |    +----osaka

Section Next | Prev