前回の記事ではログを大量に書き込む内容でしたが、今回はファイルを一括で大量に作成する必要もありましたので、またメモしておきます。
これまでの流れからすると、繰り返し構文を利用して作成すると思われますが、これからご紹介する内容はfor
はwhile
を使いません。
強いて言うなら、for
の条件式だけ書くといったところでしょうか。
本来のtouchコマンドの使い方
Linuxでファイルを作成するときによく使われるコマンドの一つがtouch
です。touch
コマンドは、指定したファイルが存在しない場合は空のファイルを作成し、存在する場合は更新日時を変更します。
「touch」は、ファイルの最終更新日を変更するコマンドです。
引用:@IT
「touch ファイル名」でtouchコマンドを実行した時間がファイルの最終更新日となります。
指定したファイルがない場合は、サイズが「0」のファイルが作成されます。
しかし、touch
コマンドにはもう一つ便利な機能があります。
それは、連番のファイルを大量に作成することができるということです。
touchで大量にファイルを作成
連番のファイルとは、例えばtest1.txt, test2.txt, test3.txt…
というように、同じ名前の一部に数字が入っているファイルのことです。
このようなファイルを一つずつ作成するのは面倒ですが、touch
コマンドを使えば一気に作成することができます。
その方法は以下の通りです。
連番ファイルを作成する(1~10)
まず、連番のファイルを作成したいディレクトリに移動します。
例えば、ホームディレクトリにtest
という名前のディレクトリを作成して、そこに移動する場合は以下のように入力します。
1 |
$ mkdir test<br>$ cd test |
次に、touch
コマンドを使って連番のファイルを作成します。
ここでは、test1.txt
からtest10.txt
までの10個のファイルを作成する例を示します。touch
コマンドには、{}
という記号を使って連番を指定することができます。
以下のように入力します。
1 |
$ touch test{1..10}.txt |
これで、test1.txt
からtest10.txt
までの10個のファイルが作成されました。
ポイントは{1..10}
ですね!
1 |
{[開始番号]..[終了番号]} |
説明するまでもないと思いましたが念のために。
それでは、ls
コマンドで確認してみましょう。
1 |
$ ls<br>test1.txt test2.txt test3.txt test4.txt test5.txt test6.txt test7.txt test8.txt test9.txt test10.txt |
このように、touch
コマンドを使えば連番のファイルを大量に作成することができます。
【応用】先頭0埋めで奇数の連番(1~20)
連番の範囲や間隔を変えたい場合は、{}
内の数字を変更すれば良いです。
例えば、test01.txt
からtest20.txt
まで2ずつ増やす場合は以下のように入力します。
1 |
$ touch test{01..20..2}.txt |
この場合、ls
コマンドで確認すると以下のようになります。
1 |
$ ls<br>test01.txt test03.txt test05.txt test07.txt test09.txt test11.txt test13.txt test15.txt test17.txt test19.txt |
以上が、Linuxのtouch
コマンドで連番のファイルを大量に作成する方法です。touch
コマンドはシンプルなコマンドですが、便利な機能がたくさんあります。
ぜひ試してみてください。
コメント