どうも!電助です。

さて、自治体ではネットワーク強靭化で3つのネットワーク系統に分断され、

それぞれのネットワーク間でのファイル移動が若干面倒なことになっています。

わたしの所属する自治体では、ネットワーク間を移動させる際に必ず「ファイル一覧」を提出させているんですね。

目的としては、

もし何かあったときに誰がいつどこからどこになんというファイルを移動したかわかる

ようにしています。

勘違いする職員もいますが、「ファイルの概要」ではないです。

◯◯.zip なんて入力されていることもありますが、そうでもないんです。

その中身のファイルがすべて知りたいんですね。



ファイル一覧の出力方法


ところで、簡単にファイル一覧を出力するには2つの方法があります。

  1. すべてのファイル名がわかるようにエクスプローラの画面コピーを取得
  2. コマンドプロンプトでtreeコマンドを利用した出力

「1」はとても簡単な方法です。

しかし、フォルダの中にいくつもフォルダがあったりしたらどうでしょう。

こちらが要求しているのは「すべてのファイルの一覧」です。

いちいちフォルダごとに画面コピーを取得していたらきりがありませんね。

そこで効率のいい方法が「2」になります。

以下のようなファイルの一覧が簡単な方法で作れてしまうんですね。

図7.png


コマンドプロンプトでtreeコマンドを利用した出力


早速実行してみると問題が発生です!

わたしはNASの中にある写真の一覧を出したかったのですが、

なぜかコマンドプロンプト上でエラーになってしまいました。

実はこのtreeコマンド、マウントしているドライブでないと実行できないようです

つまり、NASやサーバ等のファイル一覧は(そのままでは)出せないんですね。

ならば話は簡単、NASをマウントしてしまえばいいんです。


※Windows10の場合
1.エクスプローラを開き、左側のウィンドウで [PC] を選択します。

2.[コンピューター] タブで [ネットワークドライブの割り当て] を選択します。

3.以下のように設定します。

ドライブ
なんでもよいです
例: K:
フォルダー
//{NASの名前}/{フォルダ名}
例: //File-Nas/share
図1.png


4.コマンドプロンプトを開き、以下のように入力して[Enter]を押します。

cd /d K:

図3.png
※[cd] はディレクトリを移動するコマンドです。


5.早速treeコマンドを使用します。その後にファイル一覧を出したいフォルダ(◯◯フォルダ)を入力し、[Enter]を押します。

tree /f K:/〇〇

図4.png
※[tree] はファイルの一覧を出力するコマンドです。[/f]というオプションを入れることで、各フォルダのファイル名を表示することができます。


6.以下が「5」の結果になります。

図5.png


7.これで問題なければテキストファイルに出力結果を保存します。
ここでは、デスクトップに[tree.txt]を作成し、その中にtreeコマンドの結果を吐き出します。

tree /f K:/〇〇 > C:/Users/{ユーザー名}/Desktop/tree.txt

図6.png


以上で複雑なフォルダ構成の一覧も簡単にテキストで出力できます。

こちらを添付資料として申請してもらえれば、あとで何かあってもファイル名を追えるわけですね!