開発やテストをしていると、こんな場面に出くわすことはありませんか?
- アップロード上限が5MBまでなんだけど、ギリギリのサイズでテストしたい
- ディスクやネットワークの速度を測るために、100GBのテストファイルを用意したい
そんなときに便利なのが、コマンドで特定サイズのダミーファイルを作成する方法です。
この記事では、WindowsとMacそれぞれで簡単にダミーファイルを作成する方法を紹介します。
ファイルサイズの単位と計算の基本
まずは、ファイルサイズの単位と計算方法について説明します。
テスト用のファイルを作成するときは、何バイト(Byte)のファイルを作るかを正確に指定する必要があります。そのためには、まずファイルサイズの単位と換算方法を理解しておくことが大切です。
ファイルサイズは、1,024(2の10乗)ごとに単位が変わっていきます。以下の表で、代表的な単位を整理しておきましょう。
| ファイルサイズの単位 | 読み方 | 計算式 | バイト数 |
|---|---|---|---|
| 1 KiB | キビバイト | 1,024 | 1,024 Byte |
| 1 MiB | メビバイト | 1,024 × 1,024 | 1,048,576 Byte |
| 1 GiB | ギビバイト | 1,024³ | 1,073,741,824 Byte |
たとえば「5MiBのファイルを作りたい」ときは、1,048,576 × 5 = 5,242,880 Byte になります。
Windowsの表記に注意
Windowsでは、実際には2進数(1024)ベースで計算しているにもかかわらず、単位の表記に「KB」「MB」「GB」を使う仕様になっています。つまり、Windowsで表示される“5MB”は、実質的には“5MiB”とほぼ同義です。
あわせて読みたい
KB・MB・GB・TB・KiB・MiB・GiB・TiBの「違い」と「変換方法」については下記の記事で詳しく説明しています。興味のある方は下記のリンクからぜひチェックをしてみてください。 続きを見る
KB・MB・GB・TB・KiB・MiB・GiB・TiBの「違い」と「変換方法」を解説!
Windowsで特定サイズのダミーファイルを作る方法
Windowsには、標準でfsutilコマンドという強力なファイル操作コマンドが用意されています。このコマンドを使えば、特定サイズのダミーファイルを作成することができます。「アップロード上限のテスト」や「ディスク書き込み速度の検証」を行う際に非常に便利です。
基本構文
fsutil file createnew <ファイル名> <サイズ><ファイル名>:作りたいファイルの名前(例:dummy_5MB.txt)<サイズ>:ファイルの大きさをByte(バイト)単位で指定
fsutil file createnewはWindowsの組み込みコマンド(fsutil.exe)なので、「コマンドプロンプト(cmd.exe)」でも「PowerShell」でも同じように実行できます。
例えば、5MiB(Windowsの表記では5MB)のファイルを作成する場合には以下のコマンドを実行します(5 × 1024 × 1024 = 5,242,880 Byte)。
fsutil file createnew dummy_5MB.txt 5242880このコマンドを実行すると、dummy_5MB.txtというファイルがカレントディレクトリに作成されます。実際にファイルサイズを確認すると、5MiB(Windowsの表記では5MB)であることがわかります。


また、100GiB(Windowsの表記では100GB)のファイルを作成する場合には以下のコマンドを実行します(100 × 1024 × 1024 × 1024 = 107,374,182,400 Byte)。
fsutil file createnew dummy_100GB.txt 107374182400なお、16進数表記(0x)で指定することもできます(107,374,182,400の16進数表記が0x1900000000)。
fsutil file createnew dummy_100GB.txt 0x1900000000補足
fsutilで作成されるファイルは、すべてのデータが「0x00(ゼロ)」で埋められたファイルであり、物理的な実データはまだ書き込まれておらず、未書き込み領域になっています。


そのため、このファイルを読み出して速度を測定すると、実際よりも速く見えるという特性があります。理由は、未書き込み領域を読み出すと、OSがゼロを返すため、ディスクを実際に読まずに応答できるからです。
Macでダミーファイルを作る方法
macOSでは、mkfileコマンドで簡単に特定サイズのダミーファイルを作成できます。
基本構文
mkfile <サイズ> <ファイル名><ファイル名>:作りたいファイルの名前(例:dummy_5MB.txt)<サイズ>:ファイルの大きさをByte(バイト)単位で指定
例えば、5MiBのファイルを作成する場合には以下のコマンドを実行します(5 × 1024 × 1024 = 5,242,880 Byte)。
mkfile $((5 * 1024 * 1024)) dummy_5MB.txtこのコマンドを実行すると、dummy_5MB.txtというファイルがカレントディレクトリに作成されます。
また、100GiBのファイルを作成する場合には以下のコマンドを実行します(100 × 1024 × 1024 × 1024 = 107,374,182,400 Byte)。
mkfile $((100 * 1024 * 1024 * 1024)) dummy_100GB.txtテストでよく使うファイルサイズ早見表
テストファイルを作る際に、毎回バイト数を計算するのは面倒ですよね。以下に、テストでよく使うファイルサイズ早見表を示します。
| 単位 | バイト数 | 計算式 |
|---|---|---|
| 1 KiB | 1,024 Byte | 1,024 |
| 5 KiB | 5,120 Byte | 1,024 × 5 |
| 10 KiB | 10,240 Byte | 1,024 × 10 |
| 100 KiB | 102,400 Byte | 1,024 × 100 |
| 1 MiB | 1,048,576 Byte | 1,024² |
| 5 MiB | 5,242,880 Byte | 1,048,576 × 5 |
| 10 MiB | 10,485,760 Byte | 1,048,576 × 10 |
| 100 MiB | 104,857,600 Byte | 1,048,576 × 100 |
| 1 GiB | 1,073,741,824 Byte | 1,024³ |
| 5 GiB | 5,368,709,120 Byte | 1,073,741,824 × 5 |
| 10 GiB | 10,737,418,240 Byte | 1,073,741,824 × 10 |
| 100 GiB | 107,374,182,400 Byte | 1,073,741,824 × 100 |
この表をもとに、コマンドで指定するバイト数を計算せずにすぐ確認できます。たとえば「5MBのアップロード上限をテストしたい」場合は、5,242,880 Byteを指定すればOKです。
本記事のまとめ
この記事では、WindowsのfsutilコマンドとmacOSのmkfileコマンドを使って、任意サイズのダミーファイルを簡単に作成する方法を紹介しました。
開発やテストの現場では、
- アップロード上限を検証したい
- ネットワークやディスクの速度を測りたい
といった場面で、特定サイズのファイルをすぐに用意できると非常に便利です。このページで紹介したコマンドを覚えておけば、開発・検証作業がグッと効率的になります。ぜひ手元の環境で試してみてください。
お読みいただきありがとうございました。