So-net無料ブログ作成
検索選択

Unix系OSの大量、大容量ファイルの作成方法(シェル・コマンド) [Ubuntu]

試験などにより、大量もしくは大容量のファイルを作成することがあります。
今回は、シェルまたはコマンドで作成する方法を紹介します。

1.大量ファイル作成シェル
#!/bin/sh
snum=100000000000000000
enum=100000000000005000
while [ ${snum} -lt ${enum} ] ; do
echo "#0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" > ${snum}.txt
snum=`expr ${snum} + 1`
done
exit 0;

上記の場合には、100000000000000000.txt~100000000000004999.txtの5,000ファイルを作成します。
5,000ファイルを作成するのに約1分程度の時間を要します。

2.大容量ファイル作成コマンド
dd if=/dev/zero of=dummy.dat bs=1M count=100

上記のコマンドで100MB(104,857,600)のファイルが数秒で作成できます。
whileを使ってシェルでも作成できます。
以下のシェルは64Byteのファイルを連結し、128Byte、さらに連結して256Byteのように倍々のサイズにするものです。したがって、作成したい希望のサイズの乖離がでる可能性があります。
#!/bin/sh
esize=104857600
echo "#0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" > dummy.txt
ssize=`ls -l dummy.txt | cut -f5 -d' '`
while [ ${ssize} -le ${esize} ] ; do
cat dummy.txt dummy.txt >> dummy.tmp
mv dummy.tmp dummy.txt
ssize=`ls -l dummy.txt | cut -f5 -d' '`
done
exit 0;

上記のTipsは使う頻度が少ないかもしれませんが、知っておくと便利ですね。

nice!(2)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 2

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

この記事のトラックバックURL:
※ブログオーナーが承認したトラックバックのみ表示されます。