ディレクトリの階層構造を表示してテキストに出力 tree

コマンドプロンプト画面
前回のdelに引き続き、今度は「tree」というコマンドの 使い方を説明します。
treeとディレクトリツリーを表示する為のコマンド。 ディレクトリツリーとは、フォルダの階層構造の事です。
このコマンドを使うと、指定したディレクトリ以下の階層構造を視覚的に表示する事が出来ます。 オプションを指定する事によってフォルダに入ったファイル名も表示できるので、 使いようによっては結構便利です。
ここでは、コマンドプロンプトを使用した事がないような方でも理解できるように、 簡単なコマンドをできるだけわかりやすく画像を交えて解説していきますので、 ご興味のある方は最後までお付き合い下さい。

このページのトップへ
まずはじめにtreeの構文とオプションです。
tree [/f] [/a] パス名

/f ディレクトリに含まれるファイルも表示
/a 階層構造の表示に使用されている線を、拡張文字ではなくASCII文字で表示
オプションも少なく、とても簡単なコマンドです。
それでは以下より、画像を交えていくつかの使用例を解説していきます。
なお、delの記事でも書きましたが、 Windows XPではコマンドプロンプトを起動させると デフォルトで「C:¥Documents and Settings¥ユーザー名>」と表示されます。
これは、自分が現時点でコマンドを実行しているディレクトリの位置を示しており、 ここで何らかの処理を行った場合、そのフォルダが処理の対象となります。 (処理対象となるファイルやフォルダをコマンドラインで指定しない限り)
下の画像の例では「C:¥>」と表示されていて 初期の設定とは異なりますが、こちらの方が文字が少なくて見易いのでこうしました。 ちなみにC:¥>はCドライブの直下を意味します。
このページのトップへ

では、早速treeを使用してみます。
treeコマンド

treeコマンド
C:¥>tree sample
sampleディレクトリ以下の階層構造を表示します。
C:¥SAMPLE
└─bk
    └─2009_0914

このページのトップへ
treeコマンド
C:¥>tree /f sample
/fはオプションです。
このオプションを指定すると、階層構造を表示する際にフォルダ名だけではなくファイル名も表示する事ができます。
treeコマンド
以下のように表示されました。
C:¥SAMPLE
│  aaa.html
│  aaa.txt
│  bbbbb.xml
│  data.txt
│  seisei.vbs
│  style.css
│
└─bk
    │  aaa.xml
    │  aaa.xsl
    │
    └─2009_0914
            20090914_1.jpg
            20090914_2.jpg
            20090914_3.jpg
            20090914_4.jpg

このページのトップへ
treeコマンド
C:¥>tree /a sample
/aオプションを指定した場合、階層構造を示している罫線を、 拡張文字ではなくテキスト(ASCII)文字で表示します。
フォントの問題で、通常使われる文字が使用できない場合にこのオプションを指定します。
C:¥SAMPLE
¥---bk
    ¥---2009_0914

このページのトップへ
treeコマンド
C:¥>tree /f 2009_0904 | more
もしも処理対象のディレクトリやファイルの数が多い場合、 通常の表示方法だと全て一気に表示されてしまうため、長いスクロールが出来てしまいます。 (2009_0904はフォルダ名です)
そのような場合に、「|(パイプ)」と呼ばれる機能を使って 「more」コマンドを使用します。
treeコマンドから少々話が逸れてしまうのですが、 この「|(パイプ)」という機能を使用すると、 先に行ったコマンドの処理結果を別のコマンドに引き継がせる事ができます。 これはtreeに限らず様々なところで使えるので、覚えておくと便利です。
ちなみに上の場合、treeで処理を行った結果をmoreに引き継がせています。
moreはファイルの内容を画面に表示するコマンドで、 表示結果が一画面に収まらない場合には一画面ずつ、もしくは1行ずつ内容を表示します。
例として、以下の画像をご覧下さい。
上のC:¥>tree /f 2009_0904 | moreを実行した結果です。
このページのトップへ
treeコマンド
まず一画面分の階層構造が表示されます。
続きがある場合は画面の一番下に「-- More --」と表示され、そこで一時的に処理が止まります。
続きを表示させる場合、Enterキーを押すと一行ずつ、
スペースキーを押すと一画面ずつ表示させる事ができます。
なお、処理を途中で止めたい場合は、Ctrl+Cで止める事ができます。
(Ctrl+Cもコマンド全般で使用するものです)
このページのトップへ

あともう少し続きます。
今度は >(リダイレクト)という機能を使用します。
|(パイプ)と同様、覚えておくと便利な機能で、私はこの機能を良く利用します。
treeコマンド
C:¥>tree /f sample > sample.txt
/fはファイル名も含めて表示するオプションでした。
上の処理前半では、sampleディレクトリ以下のフォルダ名とファイル名を一覧表示します。
しかしその後、さらに> sample.txtと続いています。
この「>」はリダイレクトと呼ばれる機能で、 処理結果の出力先を変更する事ができます。
ここでは、リダイレクトの後にsample.txtが指定されているため、 実行するとsample.txtが作成され、全ての処理結果がこのテキストファイルへと出力されます。
以下、出力されたsample.txtの中身です。
treeコマンド
このページのトップへ

treeの説明はここまでです。
途中でtree以外のコマンドや機能が出てきたので、一応ここにも記載しておきます。
more
ファイルの内容を画面に表示するコマンド。
表示結果が一画面に収まらない場合は一画面ずつ、もしくは1行ずつ内容を表示。
| (パイプ)
先に行ったコマンドの処理結果を別のコマンドに引き継がせる事ができる
> (リダイレクト)
処理結果の出力先を変更する事ができる
ちなみに、リダイレクトは >(出力先を指定)だけではなく、  <(入力元を指定)や  >> もあります。
>> は、出力先に元々データの書かれたファイルを指定した時、 データを上書きするのではなく、出力結果を後に後に追加しておく事ができる記号です。 (>では上書きとなる)
以上です。
なお、前にも書きましたが、コマンドプロンプトは非常に便利な反面、 記述を間違えると大変な事になってしまう場合もあります。
ページに掲載したものは簡単なものなので、まず間違える事はないと思いますが、 慣れていない方は注意して使用するようにして下さい。
このページのトップへ
コマンド
ディレクトリ
ASCII文字

※キーマンズネットのIT単語帳ページへ飛びます。
様々なIT専門用語の意味を詳しく知る事ができます。
サイト上の情報利用により生じた損害等には一切責任を持ちません
2009.09.18 Friday | 初心者でも簡単コマンドプロンプト | comments(0) | trackbacks(0) | 記事URL
▲PAGETOP
同カテゴリーの記事 最新5件
Comment:
Add a comment:











※コメントは管理者が承認後表示されます。
Trackback:
http://shop.denkaseihin.com/trackback/578
※記事と関連性が低い等、管理人が不適当と判断したものについては削除させて頂きます。
新着記事
CATEGORY
まめ知識
COMMENT
  • 巨大なサイズのファイルも一瞬で削除出来るコマンド del
    denkaseihin (04/15)
  • 巨大なサイズのファイルも一瞬で削除出来るコマンド del
    原田 (04/14)
  • HPの h8-1080jpレビュー 内蔵GPU〜GTX580まで可のSandy Bridge搭載マシン
    denkaseihin (09/18)
  • HPの h8-1080jpレビュー 内蔵GPU〜GTX580まで可のSandy Bridge搭載マシン
    ヨーイチ (09/18)
  • HPの h8-1080jpレビュー 内蔵GPU〜GTX580まで可のSandy Bridge搭載マシン
    denkaseihin (09/14)
  • HPの h8-1080jpレビュー 内蔵GPU〜GTX580まで可のSandy Bridge搭載マシン
    MN (09/13)
  • Firefoxでcookieが保存されないという現象が発生したら
    denkaseihin (10/28)
  • Firefoxでcookieが保存されないという現象が発生したら
    KEKE (10/27)
SMTWTFS
      1
2345678
9101112131415
16171819202122
23242526272829
30      
<< June 2019 >>
RSS
ARCHIVES
MOBILE
qrcode
LINK

Copyright © 2005 - denkaseihin. All Rights Reserved.