現状のファイルサーバにはいったい幾つのファイルがあるのか?
ファイル容量は何ギガバイトか直ぐにわかりますが、意外なことにファイル数を即答できる方は少ないようです。
Windowsではドライブを右クリックすると容量は瞬時に確認できますが、ファイル数は数えないとわからないからです。しかもエクスプローラでフォルダアイコンを右クリックしてファイル数やフォルダサイズを表示するのに、多数のファイルのあるフォルダでは何分、何十分もかかります。バッチ処理で複数フォルダの集計を一気に実行できないため、複数フォルダ(ルート)の調査にはとても骨が折れます。
鉄飛テクノロジーでは、文書管理・検索システムFileBlogの導入を検討されるお客様が、簡単にファイルの数を数えられるように、フォルダパスの一覧を指定したらフォルダ階層を一括スキャンして、主なファイル種類別にファイル数・ファイルサイズを数え上げて一覧出力するツール「FbFileScanner」を公開します。
- 1. 対象ユーザと特徴
- 2. 使用許諾
- 3. ダウンロード
- 4. 機能
- 5. リリース情報
- 5.1. 2021/10/29
- 5.2. 2008/07/17
- 5.3. 2008/04/15
- 6. 使い方
- 6.1. 使用例1:1つのフォルダ内のファイルを数える
- 6.1.1. 結果1
- 6.1.2. 結果1の読み方
- 6.2. 使用例2:ファイル数の多い主要なフォルダを数える
- 6.3. 使用例3:複数フォルダ(少数)内のファイルを数える
- 6.4. 使用例4:複数フォルダ(多数)内のファイルを数える
- 6.5. コマンドラインオプション
- 6.5.1. ログ出力するファイル名の指定
- 6.5.2. フォルダ一覧のファイル名の指定
- 6.5.3. 集計対象拡張子リストの追加
- 6.6. 集計結果の使い方
- 6.6.1. 実行結果例
- 6.6.2. スクリプト
対象ユーザと特徴
プログラムをコマンドライン実行できる方向けのツールです。
- バッチ処理により複数のフォルダパスを指定して、その中のファイル数・ファイルサイズを主要拡張子別に集計したいという方が対象です。
- 検索エンジンの導入検討、ファイルサーバの移行や、整理整頓、ディスク増設などを計画するシステム管理者およびエンジニアによる利用を想定しています。
- コマンドラインツールなのでバッチファイルで連続呼び出しが簡単です。
- スピード最優先なので出力は最低限でシンプルですが、最小限のメモリリソースしか使用せず最速で動作します。
使用許諾
- 本プログラム(FbFileScannerV2およびV3)は、誰でも、無料で、自由に使用できます。
- ただし無保証です。動作について弊社は一切責任を負いません。(ファイル一覧を読み出すだけでありファイルの更新は行わないのでさほど危険なプログラムではないはずです)
- 開発元である弊社の許可なしでの、第三者への再配布・再使用許諾は認めません。
ダウンロード
こちらからダウンロードしてください。
機能
- 指定したルートフォルダ以下の全フォルダの全ファイルをスキャンします。
- 主なファイル種類についてファイル数とファイルサイズを集計します。
- ファイル数・ファイルサイズの基準を設けて一定以上の数量が見つかったフォルダをフォルダ一覧に出力します。
- ファイル数・容量の少ないフォルダを無視した出力を得られます。
- フォルダ一覧だけでなくファイル一覧も出力することができます。
- ファイル数が数百万件を越えて一覧ファイルが巨大になることを想定しており、メモリ消費量とディスクI/Oを抑えて始終高速に動作します。
リリース情報
2021/10/29
ver3をリリース
2008/07/17
ファイル一覧をユニコード出力するようにしました。また、長いファイル名・ShiftJIS範囲外ファイルを例外一覧に書き出すようになりました。
2008/04/15
大量ファイル一覧・フォルダ一覧作成ツール「FbFileScanner」を公開します。
使い方
FbFileScannerはコマンドラインプログラムです。Windowsコマンドプロンプトから実行してください。主な使用方法を下記に例示します。
- 1フォルダのファイル数を数える
- 「ファイル数の多い」主要なフォルダを数え上げる
- 複数フォルダ(少数)内のファイルを数える
- 複数フォルダ(多数)内のファイルを数える
- コマンドラインオプション
- 集計結果の使い方
使用例1:1つのフォルダ内のファイルを数える
- 次のようにフォルダを1つ指定すると、そのフォルダを対象にファイル数を数えます。
- パスは
D:\data\hoge
のようにドライブ文字で始まる形式と、\\サーバ名\共有名
で始まる(UNC)形式の両方を使用できます。 - 対象フォルダに読み取り権のあるユーザーで実行してください。
- 権限不足ではアクセスできないファイル・フォルダはスキップされるため正しい集計ができません。
FbFileScanner \\broccoli\teppi\work
結果1
FbFileScannerを実行するとコマンドプロンプトに次のように実行結果が出力されます。
c:\temp>FbFileScanner \\broccoli\teppi\work
time:2022-05-16T20:26:46.685+09:00 lv:INFO action:started logpath:c:\temp\FbFileScannerV32_result.log directories:\\broccoli\teppi\work
time:2022-05-16T20:26:46.685+09:00 lv:INFO action:enum begin directory:\\broccoli\teppi\work count:0 directorycount:0 filecount:0 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:0 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:46.690+09:00 lv:INFO action:enum checkpoint 0 directory:\\broccoli\teppi\work count:0 directorycount:0 filecount:0 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:0 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:47.033+09:00 lv:INFO action:enum checkpoint 1000 directory:\\broccoli\teppi\work\common\casperjs_test\casperjs\api count:37 directorycount:0 filecount:37 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:0 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:47.779+09:00 lv:INFO action:enum checkpoint 2000 directory:\\broccoli\teppi\work\common\casperjs_test\casperjs\node_modules\casperjs\node_modules___\phantomjs\node_modules\request\node_modules\bl\test count:2 directorycount:0 filecount:2 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:0 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:48.802+09:00 lv:INFO action:enum checkpoint 3000 directory:\\broccoli\teppi\work\common\casperjs_test\casperjs\node_modules\mocha\node_modules\commander count:2 directorycount:0 filecount:2 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:0 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:49.544+09:00 lv:INFO action:enum checkpoint 4000 directory:\\broccoli\teppi\work\common\Fonts\fonts\x count:1 directorycount:0 filecount:1 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:0 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:50.604+09:00 lv:INFO action:enum checkpoint 5000 directory:\\broccoli\teppi\work\common\Fonts\fonts\y count:4 directorycount:0 filecount:4 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:0 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:51.513+09:00 lv:INFO action:enum checkpoint 6000 directory:\\broccoli\teppi\work\common\Fonts\fonts\z count:0 directorycount:0 filecount:0 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:0 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:51.764+09:00 lv:INFO action:enum checkpoint 7000 directory:\\broccoli\teppi\work\common\images\Microsoft_icons\VS2012 Modern Image Library\VS2012 Modern Image Library\Actions\bmp count:680 directorycount:0 filecount:680 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:680 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:51.786+09:00 lv:INFO action:enum checkpoint 8000 directory:\\broccoli\teppi\work\common\images\Microsoft_icons\VS2012 Modern Image Library\VS2012 Modern Image Library\Actions\png count:390 directorycount:0 filecount:390 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:390 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:51.836+09:00 lv:INFO action:enum checkpoint 9000 directory:\\broccoli\teppi\work\common\images\Microsoft_icons\VS2012 Modern Image Library\VS2012 Modern Image Library\Objects\bmp count:462 directorycount:0 filecount:462 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:462 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:51.859+09:00 lv:INFO action:enum checkpoint 10000 directory:\\broccoli\teppi\work\common\images\Microsoft_icons\VS2012 Modern Image Library\VS2012 Modern Image Library\Objects\png count:160 directorycount:0 filecount:160 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:160 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:26:56.381+09:00 lv:INFO action:enum checkpoint 20000 directory:\\broccoli\teppi\work\okd\backup\backup00_岡田\photo\20090601 count:8 directorycount:0 filecount:8 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:8 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:01.848+09:00 lv:INFO action:enum checkpoint 30000 directory:\\broccoli\teppi\work\y-okuno\__backup\-20151022\Apache22\include count:27 directorycount:0 filecount:27 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:0 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:09.413+09:00 lv:INFO action:enum end directory:\\broccoli\teppi\work count:32716 directorycount:3128 filecount:29588 last1yearfilecount:617 docm,doc,docx:270 pptm,pptx,ppt:72 xlsm,xlsx,xls:329 vst,vss,vsd,vdw:2 pdf:247 jtt,jtd:1 xbd,xdw:4 html,csv,htm,txt:1762 dxf,dwg:17 bmp,jpg,tif,tiff,png,jpeg,gif:15783 mp4,avi,flv,m2v,wmv,mpg,mov:205 eps,ai,indd:150
time:2022-05-16T20:27:09.413+09:00 lv:INFO action:completed
- 1行の文字数が多いため右端で折返って複数行で表示され、たいへん見づらい表示となります。
- 画面出力と同じ内容がカレントフォルダに
FbFileScanner_result.log
としてテキスト出力されます。 - これをテキストエディタやExcelで開いて確認してください。(TAB区切りのためテキストエディタからコピーしてExcelに貼り付けると整形されて読みやすくなります)
- 画面出力と同じ内容がカレントフォルダに
- 1フォルダにつき
enum begin
の行で始まり、enum checkpoint
の行が何度か出力された後、enum end
の行が出て終了します。 - checkpointの行は最初の1万件まで千件おきに出力され、その後は一万件おきに出力されます。(スキャンの進捗がわかります)
- FbFileScannerの出力を整形するスクリプトについて、本ページの末尾にPowerShellスクリプトを紹介しています。
結果1の読み方
enum end
の行に注目してください。これが最終的なカウントです。
INFO 2021-10-28T19:11:21.402+09:00 enum end directory:\\broccoli\teppi\work count:31447 directorycount:2860 filecount:28587 last1yearfilecount:138 docm,doc,docx:275 pptm,pptx,ppt:71 xlsm,xlsx,xls:313 vst,vss,vsd,vdw:2 pdf:238 jtt,jtd:1 xbd,xdw:4 html,csv,htm,txt:1754 dxf,dwg:17 bmp,jpg,tif,tiff,png,jpeg,gif:15622 mp4,avi,flv,m2v,wmv,mpg,mov:205 eps,ai,indd:150
横に長いので、行と列を入れ替えると読みやすくなります。
enum end
directory:\\broccoli\teppi\work
count:31447
directorycount:2860
filecount:28587
last1yearfilecount:138
docm,doc,docx:275
pptm,pptx,ppt:71
xlsm,xlsx,xls:313
vst,vss,vsd,vdw:2
pdf:238
jtt,jtd:1
xbd,xdw:4
html,csv,htm,txt:1754
dxf,dwg:17
bmp,jpg,tif,tiff,png,jpeg,gif:15622
mp4,avi,flv,m2v,wmv,mpg,mov:205
eps,ai,indd:150
コロンで区切ってあるものを表にするとファイル種類別のカウントを取得できます。
項目名 | カウント | 説明 |
---|---|---|
count | 31,447 | ファイル数+フォルダ数の総合計 |
directorycount | 2,860 | フォルダ数合計 |
filecount | 28,587 | ファイル数合計 |
last1yearfilecount | 138 | 過去一年以内に更新されたファイル数 |
docm,doc,docx | 275 | Wordファイル |
pptm,pptx,ppt | 71 | PowerPointファイル |
xlsm,xlsx,xls | 313 | Excelファイル |
vst,vss,vsd,vdw | 2 | Visioファイル |
238 | PDFファイル | |
jtt,jtd | 1 | 一太郎ファイル |
xbd,xdw | 4 | DocuWorksファイル |
html,csv,htm,txt | 1,754 | TXTまたはHTMLファイル |
dxf,dwg | 17 | CADファイル |
bmp,jpg,tif,tiff,png,jpeg,gif | 15,622 | 画像ファイル |
mp4,avi,flv,m2v,wmv,mpg,mov | 205 | 動画ファイル |
eps,ai,indd | 150 | DTPファイル |
使用例2:ファイル数の多い主要なフォルダを数える
次のように、/countThreshold
パラメータでカウントを指定すると、指定フォルダのサブフォルダで指定された件数以上のファイル・フォルダを含むサブフォルダの統計情報を出力します。
FbFileScanner \\broccoli\teppi\work /countThreshold 2000
上記の例では、2000件以上のファイル・フォルダを含むフォルダの統計情報を出力します。
出力行は、action:outstanding folder
としてマークされます。
次に結果の一部(enum:checkpoin
とマークされる進捗表示行を取り除いたもの)を例示します。
time:2022-05-16T20:27:27.337+09:00 lv:INFO action:started logpath:c:\temp\FbFileScannerV32_result.log directories:\\broccoli\teppi\work
time:2022-05-16T20:27:27.338+09:00 lv:INFO action:enum begin directory:\\broccoli\teppi\work count:0 directorycount:0 filecount:0 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:0 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:31.062+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\casperjs_test\casperjs count:2494 directorycount:433 filecount:2061 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:64 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:27 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:31.062+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\casperjs_test count:2500 directorycount:434 filecount:2066 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:64 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:27 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:34.494+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\Fonts\fonts\現在入手可能な日本語フォント全450書体[Windows完全版] count:2716 directorycount:462 filecount:2254 last1yearfilecount:0 docm,doc,docx:56 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:55 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:122 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:210 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:3
time:2022-05-16T20:27:34.551+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\Fonts\fonts count:2777 directorycount:478 filecount:2299 last1yearfilecount:0 docm,doc,docx:56 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:55 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:139 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:210 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:3
time:2022-05-16T20:27:34.551+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\Fonts count:2798 directorycount:479 filecount:2319 last1yearfilecount:0 docm,doc,docx:56 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:55 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:141 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:210 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:3
time:2022-05-16T20:27:34.648+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\images\Microsoft_icons\VS2012 Modern Image Library\VS2012 Modern Image Library\Actions count:2021 directorycount:4 filecount:2017 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:1968 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:34.739+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\images\Microsoft_icons\VS2012 Modern Image Library\VS2012 Modern Image Library\Objects count:2059 directorycount:4 filecount:2055 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:1884 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:35.100+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\images\Microsoft_icons\VS2012 Modern Image Library\VS2012 Modern Image Library\x--archive--x count:2491 directorycount:40 filecount:2451 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:28 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:2096 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:35.137+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\images\Microsoft_icons\VS2012 Modern Image Library\VS2012 Modern Image Library count:7869 directorycount:57 filecount:7812 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:2 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:28 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:7220 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:35.137+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\images\Microsoft_icons\VS2012 Modern Image Library count:7871 directorycount:58 filecount:7813 last1yearfilecount:0 docm,doc,docx:1 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:2 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:28 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:7220 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:35.137+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\images\Microsoft_icons count:7872 directorycount:59 filecount:7813 last1yearfilecount:0 docm,doc,docx:1 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:2 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:28 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:7220 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:35.892+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common\images count:8373 directorycount:121 filecount:8252 last1yearfilecount:0 docm,doc,docx:1 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:2 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:30 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:7536 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:0
time:2022-05-16T20:27:37.324+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\common count:17571 directorycount:1292 filecount:16279 last1yearfilecount:73 docm,doc,docx:83 pptm,pptx,ppt:36 xlsm,xlsx,xls:41 vst,vss,vsd,vdw:1 pdf:88 jtt,jtd:1 xbd,xdw:4 html,csv,htm,txt:493 dxf,dwg:13 bmp,jpg,tif,tiff,png,jpeg,gif:9975 mp4,avi,flv,m2v,wmv,mpg,mov:5 eps,ai,indd:126
time:2022-05-16T20:27:40.111+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\okd\backup\backup00_岡田\photo count:4058 directorycount:87 filecount:3971 last1yearfilecount:0 docm,doc,docx:0 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:3778 mp4,avi,flv,m2v,wmv,mpg,mov:192 eps,ai,indd:1
time:2022-05-16T20:27:40.111+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\okd\backup\backup00_岡田 count:4063 directorycount:89 filecount:3974 last1yearfilecount:0 docm,doc,docx:1 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:3779 mp4,avi,flv,m2v,wmv,mpg,mov:192 eps,ai,indd:2
time:2022-05-16T20:27:40.207+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\okd\backup count:4089 directorycount:114 filecount:3975 last1yearfilecount:0 docm,doc,docx:1 pptm,pptx,ppt:0 xlsm,xlsx,xls:0 vst,vss,vsd,vdw:0 pdf:0 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:0 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:3780 mp4,avi,flv,m2v,wmv,mpg,mov:192 eps,ai,indd:2
time:2022-05-16T20:27:41.139+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\okd count:6660 directorycount:245 filecount:6415 last1yearfilecount:36 docm,doc,docx:67 pptm,pptx,ppt:3 xlsm,xlsx,xls:47 vst,vss,vsd,vdw:0 pdf:30 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:22 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:5173 mp4,avi,flv,m2v,wmv,mpg,mov:196 eps,ai,indd:20
time:2022-05-16T20:27:50.837+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\y-okuno\__backup\-20151022 count:3418 directorycount:872 filecount:2546 last1yearfilecount:0 docm,doc,docx:16 pptm,pptx,ppt:17 xlsm,xlsx,xls:13 vst,vss,vsd,vdw:0 pdf:35 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:344 dxf,dwg:0 bmp,jpg,tif,tiff,png,jpeg,gif:257 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:1
time:2022-05-16T20:27:50.837+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\y-okuno\__backup count:4769 directorycount:953 filecount:3816 last1yearfilecount:0 docm,doc,docx:19 pptm,pptx,ppt:23 xlsm,xlsx,xls:18 vst,vss,vsd,vdw:0 pdf:42 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:1050 dxf,dwg:4 bmp,jpg,tif,tiff,png,jpeg,gif:497 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:2
time:2022-05-16T20:27:50.895+09:00 lv:INFO action:outstanding folder directory:\\broccoli\teppi\work\y-okuno count:6170 directorycount:1257 filecount:4913 last1yearfilecount:477 docm,doc,docx:33 pptm,pptx,ppt:29 xlsm,xlsx,xls:149 vst,vss,vsd,vdw:0 pdf:51 jtt,jtd:0 xbd,xdw:0 html,csv,htm,txt:1060 dxf,dwg:4 bmp,jpg,tif,tiff,png,jpeg,gif:596 mp4,avi,flv,m2v,wmv,mpg,mov:0 eps,ai,indd:2
time:2022-05-16T20:27:50.895+09:00 lv:INFO action:enum end directory:\\broccoli\teppi\work count:32716 directorycount:3128 filecount:29588 last1yearfilecount:617 docm,doc,docx:270 pptm,pptx,ppt:72 xlsm,xlsx,xls:329 vst,vss,vsd,vdw:2 pdf:247 jtt,jtd:1 xbd,xdw:4 html,csv,htm,txt:1762 dxf,dwg:17 bmp,jpg,tif,tiff,png,jpeg,gif:15783 mp4,avi,flv,m2v,wmv,mpg,mov:205 eps,ai,indd:150
time:2022-05-16T20:27:50.895+09:00 lv:INFO action:completed
使用例3:複数フォルダ(少数)内のファイルを数える
次のように、引数で複数のフォルダを指定することができます。
FbFileScanner \\broccoli\teppi\work \\broccoli\teppi\sales D:\share\it
使用例4:複数フォルダ(多数)内のファイルを数える
対象フォルダが多数ある場合は指定フォルダの一覧をテキストファイルで供給できます。
- テキストファイルに、次のように改行区切りでフォルダパスの一覧を記入し、
dirlist.txt
という名前で(UTF8文字コードで)保存します。
\\broccoli\teppi\work
\\broccoli\sales
c:\temp
- 次のようにコマンドラインで実行します。
FbFileScanner -directorylist c:\temp\dirlist.txt
コマンドラインオプション
ログ出力するファイル名の指定
-logpath
オプション引数でログ出力のファイルパスを指定できます。省略時にはカレントフォルダに FbFileScanner_result.txt が作成されます
FbFileScanner.exe c:\share -logpath c:\hoge.txt
フォルダ一覧のファイル名の指定
-directorylist
オプション引数でフォルダ名一覧のファイルパスを指定します。
FbFileScanner.exe -directorylist
集計対象拡張子リストの追加
-type
オプション引数で、集計対象の拡張子グループを追加できます。
カンマ区切りで拡張子を1つ以上指定することで、それらの拡張子をもつファイルの数とサイズが集計されるようになります。
- 出力ファイルに対応する列が追加されます。
- セミコロン区切りで複数グループを追加できます。
FbFileScanner.exe c:\share -type doc,xls,ppt;docx,xlsx,pptx
集計結果の使い方
出力ファイルは、Excelでタブ区切りテキストファイルとして開くのが見やすいのでおすすめです。
end enum
の列でフィルタをかけたり、並べ替えたりして集計結果の行だけを取り出します。
このファイル形式は"LTSV"形式です。(Labeled Tab Separated Values)
LTSVファイルを加工してタブ区切りテキストに変換するPowerShellスクリプトを公開します。
実行結果例
複数フォルダについてスキャン実行した結果ファイルをスクリプト実行で変換してExcelに貼り付けると下図のようになります。
スクリプト
# LTSV2TSV
# 本スクリプトを 例えばltsv2tsv.ps1として保存して、実行してください。
# ExecutionPolicyに関するセキュリティエラーが出る場合は、呼び出し元のPowerShellコマンドラインで、下記を先に実行することで実行可能になります
# Set-ExecutionPolicy RemoteSigned -Scope Process
#
$InputFile = "FbFileScanner_result.log"
#
# ----- STEP 1 ----- ヘッダ行の処理
#
# 入力ファイルから、"enum end"の行を抽出します
#Get-Content $InputFile | Select-String "`taction:enum end`t"
# 抽出した行の先頭行を取り出します
#$line = Get-Content $InputFile | Select-String "`taction:enum end`t" | Select-Object -First 1
# 抽出した行の先頭行を文字列にして取り出します
$line = Get-Content $InputFile | Select-String "`taction:enum end`t" | Select-Object -First 1 |Foreach-Object ToString
# 先頭行をタブで分割し、コロンの前だけを取り出します
$items=$line.split("`t");
for ( $i=0; $i -lt $items.Length; $i++ ){
$s= ($items[$i] -replace ":.*$", "")
$items[$i] = $s
}
# タブ区切りに戻してヘッダ行を出力
$items -join "`t"
#
# ----- STEP 2 ----- データ行の処理
#
# 抽出した行でループしてデータ行を出力します
# タブ区切りされた各フィールドの、最初のコロン以降だけを出力します
Get-Content $InputFile | Select-String "`taction:enum end`t|`taction:outstanding folder`t" |
Foreach { $_ -replace "^[^:]+:",""} |
Foreach { $_ -replace "`t[^:]+:", "`t" }