ファイルサーバーにある大量のフォルダをSharePointのドキュメントライブラリへ移動することになり、対応を行ったのですが、一度に大量のファイルやフォルダの移動をのにSharePoint側の制限でうまく処理できないことがあったり、業務で利用中ということもあり、実際に使っていないフォルダから少しずつ移動することにしたのですが、ユーザー側と使っていないフォルダがどれなのかを確認する必要があり、一度現在のフォルダの一覧(ディレクトリツリー)を書き出し、ユーザーに使用/不使用のチェックを入れてもらうことにしました。
今回は、この対応の中で行ったディレクトリツリーをExcelに書き出す手順について説明したいと思います。
検証環境:
Windows10 20H2, ThinkPad X395
目次
treeコマンドでフォルダ階層の.txtファイルを書き出す
- ディレクトリツリーを書き出す起点となる場所で、windowsエクスプローラーのアドレスバーに「cmd」と入力してEnterを押します。
- コマンドプロンプトが起動するので、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
書き出したファイルを整形する
コマンド構成:
tree [起点ディレクトリ] [オプション] > [ファイル名].txt
使用例1:
起点ディレクトリでコマンドプロンプトを開いた場合は以下の様になります。
起点ディレクトリでコマンドプロンプトを開いた場合は以下の様になります。
C:\data\Favorites>tree > list.txt
使用例2:
コマンドでパスを指定する場合は以下の様になります。
コマンドでパスを指定する場合は以下の様になります。
C:\>tree c:\data\Favorites > c:\data\Favorites\list.txt
使用例3:
オプション/fを使用することで、フォルダ内のファイル名の一覧を表示させた状態で出力することもできます。
オプション/fを使用することで、フォルダ内のファイル名の一覧を表示させた状態で出力することもできます。
C:\data\Favorites>tree /f > list.txt
ただ見るだけならこの状態でもよいのですが、フォルダ移動の進捗チェックなどができるようにツリーの棒を取り除きます。
- リストをメモ帳などで開き、置換でリスト中の”│”、”└”、”─”、”├” の部分を → ” “(半角スペース2コ)に変換します
- ” “(半角スペース4コ)をTab1コに変換します。
Tabはメモ帳の置換ウィンドウ上では入力できないので、メモ帳を新規で開いてTab入力→コピペ、もしくはWordなどを開いてTab入力→コピペ等で対応してください。
- 上記ファイルを保存して閉じ、Excelから開くと以下の様にセルごとにフォルダ名が分かれた状態で表示されます。
あとは、必要に応じて編集してみてください。例えば今回のようにフォルダ移動の進捗共有であれば以下のように項目を足すとわかりやすいと思います。
まとめ
フォルダが沢山あって、データの整理をしたい時に便利かと思い記事にしました。書きながら思ったのですが、業務で利用中でも、差分を認識して移行先を更新してくれるようなツールもありますので、また改めて紹介できたらと思います。とはいえこの方法ならフォルダ状態を手軽に確認管理できますので、お役に立てると幸いです(^^)
コメント