Windowsで任意のサイズや数のダミーファイルを作成するならfsutilコマンド

Windowsで任意のサイズや数のダミーファイルを作成するならfsutilコマンド

Windows環境で、ディスクの読み書き速度やネットーワーク送受信速度をテストするとき、テスト用のダミーファイルとして、大容量のファイル(数GB、数TB)や、大量のファイルが欲しいときがあります。

このようなとき、専用のダミーファイル作成ツールを利用するという手もありますが、Windowsの標準コマンド「fsutil」でも、カンタンにダミーファイルを作成することができます。

そこでここでは、Windows 10でfsutilコマンドを使って、任意のサイズや数のダミーファイルを作成する方法を紹介します。

この記事は、以下の環境で実行した結果を基にしています。他のエディションやバージョンでは、動作結果が異なる場合があることをご了承ください。

ソフトウェアバージョン
Windows 10 Pro 64bit1909

fsutilコマンドでファイルを作成する

fsutilコマンドでファイルを作成するときは、コマンドプロンプトを起動して、次のようにコマンドを実行します。

> fsutil file createnew <ファイル名> <ファイルサイズ>

ファイルサイズは、バイト単位で10進数か16進数で指定します。

指定したサイズのファイルを作成する

例えば10Gバイト(100×1024×1024×1024=107,374,182,40)のファイルを作成するには、次のように実行します。

> fsutil file createnew E:testfile.dat 10737418240

ファイルが作成されると「ファイルXXXXXが作成されました」と表示されます。

Windowsで任意のサイズや数のダミーファイルを作成するならfsutilコマンド

指定した数のファイルを作成する

指定したサイズのファイルを大量に作成したい場合は、for文を組み合わせることで作成できます。

たとえば、1Mバイトのファイルを1000個作成する場合は、次のように実行します。

> for /L %i in (1, 1, 1000) do fsutil file createnew E:testfile_%i.dat 1048576

作成したファイルの留意点

fsutilコマンドでファイルを作成する場合、NTFSやReFSファイルシステム上であれば、巨大なファイルサイズでも、ほぼ一瞬で作成することができます。

これは、fsutilコマンドで作成されるファイルは、ディスク上で領域は確保されますが、実際にデータは書き込まれていないためです。

そのため、fsutilコマンドで作成したファイルは、そのままでは読み出し速度の測定などで利用しても意味はありません。

もし、読み出し速度の測定などで利用したい場合は、fsutilコマンドで作成したファイルを別のファイルとしてコピーすることで、実際にディスクに書き込まれ、テスト用ファイルとして利用できるようになります。

Memo

ちなみに、FAT32などのファイルシステムでは、fsutilコマンドでファイルを作成すると、実際にディスクへ書き込まれるため、ファイル作成にはファイルサイズに応じた時間がかかります。

参考:
Windows 10対応:巨大サイズのファイルを簡単に作る(fsutilコマンド編):Tech TIPS - @IT

あとがき

Linux環境でテスト用のダミーファイルを作成したい場合は、以下の記事が参考になるでしょう。

Linuxで指定した容量や数のダミーファイルをコマンドで作成する方法
ここでは、RedHat互換のLinuxで指定した容量や数のダミーファイルをサッと作成できるコマンド「fallocate」の使い方を紹介します。