テスト用のデータなんかを作成したいときに。

例えば、1 MBytes(1,024,000 Bytes)のファイルを作成したい場合は以下のコマンド。

2023-08-23 : update

Mac を更新したからか、以前のコマンドではエラーが出るようになってしまったので更新。

base64 -i /dev/random 2>/dev/null | fold -w 100 | head -c 1024000 > 1M.txt

base64 コマンドに入力ファイルを指定する -i オプションの追加と、標準エラーの出力を表示しないようにします。

以下は以前のコマンド。今の私の環境 (macOS Ventura 13.5.1 / zsh 5.9 (x86_64-apple-darwin22.0)) だと base64 コマンドのオプション不備で正しく動かなくなってしまった。

base64 /dev/random | fold -w 100 | head -c 1024000 > 1M.txt
# 引数指定の不備でエラーになってしまう
base64: invalid argument /dev/random
Usage:	base64 [-hDd] [-b num] [-i in_file] [-o out_file]
  -h, --help     display this message
  -Dd, --decode   decodes input
  -b, --break    break encoded string into num character lines
  -i, --input    input file (default: "-" for stdin)
  -o, --output   output file (default: "-" for stdout)

fold -w 100 は 100 文字で折り返す。

できあがったファイルの中身は以下のようになる(一部)。

x7boA7Z2wCzRPqMIDMFKwrl/pjO8hp+gkCx3YCVVTt/iAAx5ee5hUZ0nLsBPXdWZGixkfcDWSX7SLULyY26L8c6R5kwjcntUdgMZ
h+o9JdsW8kzY4k6cyZ+B8JMc3Mc2AqRQFTtYyux+V/hDB3DUQW/AGy1QnpDmFzVi1B4405cb+hbBZHyNszeNpO82C53aG2yH2wWT
esSVa2SImNhtplWOwCsPgBm7hvIJngNE7iCuEGjE4gd+GUnV5tEYPr8AIbWksIhrFC8Rg9oG4J1Vj7alXwVYCZOC9jqy1Fg4geky
DPYkbxgwanp1G5hbtFlpRc6gkxLUCnfgRrtNXrFEdz64y8uw8yZfePCpTiRNM6H4eqEcTMsprRB0oUXMKyHqh89/E/Xu5QtAH4T6
7WySEts8ywwOgk11tKPCP/08/TyoCU9kDWQ3LrxBJES8KfUlLhPuPZ2x2VdA7B1tJ4W ......