馬とテニスのIT革命
馬とテニスとリラックマが好きな IT 系のエンジニアです。
シェル

シェルスクリプトで短時間に大量ファイルを作成する方法

リモートへのファイルコピーを検証していて、1 つのファイルの容量は軽くてもいいから大量のファイルのコピーを試したいケースに遭遇しました。

そんな時、シェルを使うと楽で、少し調整すればコマンドラインからワンライナーで実行もできます。

今回は、そのワンライナーコマンドを紹介します。

容量の大きなファイルの場合

容量の大きいファイルを大量に作成したい場合は、何か 1 つ元となるファイルを用意しておいて、それを別名でコピーしていくっていう方法が思い浮かびます。

さすがにチマチマとファイルを作るよりもベースとなるファイルを活かして、数を増やしていくのが早いです。

容量の軽いファイルの場合

容量の軽いファイルの場合は、ちょっとしたテキストファイルを量産してしまうのが早そうです。

10000 個のファイルを別名で作るのは以下の通り。

#!/bin/sh

n=1
e=10000

while [ ${n} -le ${e} ] ; do
    echo "ABCDEFGHIJKLMNOPQRSTUVWXYZ" > ${n}.txt
    n=`expr $n + 1`
done

exit 0;

ワンライナーは難しくない

即席でちょっとしたことをしたい時には、ワンライナーで書けるようにしておきたいですね。

ワンライナーで書くと以下の通り。

n=1; while [ ${n} -le 5 ] ; do echo "ABCDEFGHIJKLMNOPQRSTUVWXYZ" > ${n}.txt; n=`expr $n + 1`; done

複雑なワンライナーはミスの元なので好きではありませんが、シンプルなものであればワンライナーが好ましい場合もあります。

Web API The Good Parts

オライリーの「Web API」に特化した本です。最近の多くの Web サービスは API が活用されていますが、その技術はこれまでの Web サイトとそれほど大きく変わりません。

今後、マイクロサービス化が進む中で知っておいて損はない内容が詰め込まれており、現場のエンジニアやこれから Web 系のエンジニアを目指す人にもオススメの一冊です。

created by Rinker
¥2,376
(2018/10/20 14:06:04時点 Amazon調べ-詳細)

あなたにオススメ