フォルダの階層(ディレクトリツリー)をExcelにエクスポートする方法

コマンド関連のアイキャッチ画像 IT知識・技術

ファイルサーバーにある大量のフォルダをSharePointのドキュメントライブラリへ移動することになり、対応を行ったのですが、一度に大量のファイルやフォルダの移動をのにSharePoint側の制限でうまく処理できないことがあったり、業務で利用中ということもあり、実際に使っていないフォルダから少しずつ移動することにしたのですが、ユーザー側と使っていないフォルダがどれなのかを確認する必要があり、一度現在のフォルダの一覧(ディレクトリツリー)を書き出し、ユーザーに使用/不使用のチェックを入れてもらうことにしました。

今回は、この対応の中で行ったディレクトリツリーをExcelに書き出す手順について説明したいと思います。

検証環境:
Windows10 20H2, ThinkPad X395

目次
  1. treeコマンドでフォルダ階層の.txtファイルを書き出す
  2. 書き出したファイルを整形する

treeコマンドでフォルダ階層の.txtファイルを書き出す

  1. ディレクトリツリーを書き出す起点となる場所で、windowsエクスプローラーのアドレスバーに「cmd」と入力してEnterを押します。
    フォルダ展開→アドレスバーにcmd→enter

    フォルダ展開→アドレスバーにcmd→enter

  2. コマンドプロンプトが起動するので、treeコマンドを使ってディレクトリツリーを出力します。
    コマンド構成:
    tree [起点ディレクトリ] [オプション] > [ファイル名].txt
    使用例1:
    起点ディレクトリでコマンドプロンプトを開いた場合は以下の様になります。
    C:\data\Favorites>tree > list.txt
    フォルダ構成のみの出力例

    フォルダ構成のみの出力例

    使用例2:
    コマンドでパスを指定する場合は以下の様になります。
    C:\>tree c:\data\Favorites > c:\data\Favorites\list.txt
    使用例3:
    オプション/fを使用することで、フォルダ内のファイル名の一覧を表示させた状態で出力することもできます。
    C:\data\Favorites>tree /f > list.txt

    各フォルダ内のファイル名も表示させた場合の出力例

    各フォルダ内のファイル名も表示させた場合の出力例

書き出したファイルを整形する

ただ見るだけならこの状態でもよいのですが、フォルダ移動の進捗チェックなどができるようにツリーの棒を取り除きます。

  1. リストをメモ帳などで開き、置換でリスト中の”│”、”└”、”─”、”├” の部分を → ” “(半角スペース2コ)に変換します
    各フォルダ内のファイル名も表示させた場合の出力例

    各フォルダ内のファイル名も表示させた場合の出力例

    ツリーの棒部分を置換

    ツリーの棒部分を置換

  2. ” “(半角スペース4コ)をTab1コに変換します。
    Tabはメモ帳の置換ウィンドウ上では入力できないので、メモ帳を新規で開いてTab入力→コピペ、もしくはWordなどを開いてTab入力→コピペ等で対応してください。
    スペース部分をタブに置換

    スペース部分をタブに置換

  3. 上記ファイルを保存して閉じ、Excelから開くと以下の様にセルごとにフォルダ名が分かれた状態で表示されます。
    Excelで成形したリストを開いた状態

    Excelで成形したリストを開いた状態

あとは、必要に応じて編集してみてください。例えば今回のようにフォルダ移動の進捗共有であれば以下のように項目を足すとわかりやすいと思います。

リストを利用した編集例

リストを利用した編集例

まとめ

フォルダが沢山あって、データの整理をしたい時に便利かと思い記事にしました。書きながら思ったのですが、業務で利用中でも、差分を認識して移行先を更新してくれるようなツールもありますので、また改めて紹介できたらと思います。とはいえこの方法ならフォルダ状態を手軽に確認管理できますので、お役に立てると幸いです(^^)

コメント

タイトルとURLをコピーしました