$0 [dirname]
  
  指定されたディレクトリから、i階層下にあるディレクトリで、さらにそこからj階層下まで
 何かディレクトリを持つものが何個あるのかを、行列状に示す。縦方向がiで、横方向がjに対応。
  シンボリックリンクのディレクトリは辿らない。存在する場合は、その数を出力する。
  dirname が指定されない場合は、現行ディレクトリが指定されたものと見なされる。

出力表の解説 :
  1. 出力表において、「+」と表記された列は、i階層の合計値を示す。「++」は累積和。
  2. 最も左の列は i = 1,2,3.. を示す。最初の列の内、数は j = 0,1,2,..,(i-1)を示す。
  3. j=0 (対応する各ディレクトリは子ディレクトリを持たない)は黄色で示した。
     その部分に対応するディレクトリの例が、最も右の列に黄色で示される。
     (ディレクトリの例は、ランダムに抽出される。再現性の確保のため -s でシードが指定可能。)
  4. マゼンタ(紫)色で、各i(基点からのディレクトリ深さ)に対応するシンボリックリンファイルの
     ディレクトリの個数を示す。
  5. オプションの-fの指定により、plainファイルの個数を数える。
     出力表の最後の行の2列目が、指定ディレクトリ全体の plainファイルの総数と一致する。

 オプション: 

   -. 0 : 隠しファイルを辿らない。
   -f   : ディレクトリの個数で無くて、普通の(plainな)ファイルの個数を数える。
   -g N1-N2 ; iがN1, jがN2に相当するディレクトリ名を出力する。N1-N2の書式は コンマ(,)で連結が可能
   -g ...[dx] ; xを指定文字列に含むことで表の出力を抑制する。dがある場合は深さ情報を抑制する。
   -g ...[Aa] : aの有無でディレクトリの表示が変わる。あれば、指定ディレクトリ名から表示する。Aを含めば、絶対パスとなる。
   -g ...l  : シンボリックリンクのディレクトリを出力する。 
   -l 0 : シンボリックリンファイルは見ない。
   -s N  : シャッフルの時の、ランダムシード。
   --noshuffle : シャッフルをしない。-v1で辞書順最初、-v2で加えて辞書順最後が出力される。
   --pattern : (実験的)ディレクトリ名またはファイル名を正規表現で指定する。(末尾は$を指定するが、先頭文字へのマッチングは^ではなくて、/を指定すること。)

   -v N : 該当するディレクトリ名を、具体的に何個取り出すか。N=0,1,2が指定できる。

 その他の注意: 
   - Ctrl+C では途中結果を出すのみで,停止しない。Ctrl+\で停止する。

 開発上の注意 : 
   * chdir ".." が意図通りに動作しないことがあったので、opendirを使った動作とした。