空ファイルを作るのは何が速いか試してみる修行

空ファイルをたくさん生成するとき、どういう方法が速いのか、試してみた。

  1. 「cp /dev/null ファイル名」で生成→ まぁまっとうな方法
  2. 「touch ファイル名」で生成→ 新規に作る「ファイル名」が存在しないことが条件
  3. 一つ空ファイルを作り、あとはそのハードリンクを作成→ ファイルの実体は一つなので使えるときが限定される
  4. 一つ空ファイルを作り、あとはそのシンボリックリンクを作成→ ファイルの実体は一つなので使えるときが限定される

新規にディレクトリを作成し、そこに 1 万個の空ファイルを作成する時間を time コマンドで計測。

  1. 21.6 秒
  2. 20.7 秒
  3. 20.7 秒
  4. 21.6 秒

あんまり意味のあるデータではないな。ま、こういう方法があるよということで。