基本コンテンツで複数のファイルを作成する方法 - Parrot Linux

基本コンテンツで複数のファイルを作成する方法 - Parrot Linux

フォルダの内容を含むxファイルを作成する方法を知りたいです。

たとえば、

私のホームディレクトリのfiles testフォルダに基本コンテンツを含む250個のファイルを作成したいと思います。

私にとって本当に助けが必要なのは、bashシェルを使用してテスト目的でコンテンツを含む大量のファイルを作成する方法です。

どんな助けでも大変感謝します。

答え1

コンテンツを含むファイルを作成し、250回実行するループを作成できます。

for i in $(seq 1 250) ; do echo -n "content" > ~/test/file$i ; done

説明する:

  • seq 1 250:1から250までの数字を表示します。 forはそれを使用して実行する必要がある回数を計算します。
  • echo -n "content" > ~/test/file$i:「内容」をホームディレクトリの「test」フォルダにあるファイルに保存します。

echo -n > file$i私は次のものより速いので、使用することを好みますtouch file$1

>> time ./01.sh
./01.sh  0,03s user 0,06s system 28% cpu 0,316 total
>> time ./02.sh
./02.sh  0,01s user 0,00s system 77% cpu 0,017 total

01.shコンテンツ:

#!/bin/bash

for i in {001..250} ; do touch ./01/file$i ; done

02.shコンテンツ:

#!/bin/bash

for i in {001..250} ; do echo -n > ./02/file$i ; done

答え2

まず、次のような単純なbash forループで始めることができます。

for i in {001..250} ; do touch ./file$i ; done

これにより、現在のディレクトリにfile001〜file250という名前の空の250ファイルが作成されます。

タッチ(この場合)は、ファイルが存在しない場合にのみ生成されます。ファイルが空です。何かを含むファイルを作成するには、ループdo部分を変更できますfor。たとえばdo cp ./master.file ./newfile.$i、master.fileというファイルを250個の新しいファイル(newfile.001からnewfile.250まで)にコピーします。

とても混乱していますか?この機能がbashでどのように機能するかを理解するのに少し時間がかかりましたが、一度理解した後はほぼ毎日使用します。だから楽に聞いてください。それでは、より多くおよび/またはより良い説明をするよう努めます。

答え3

以前の(非常に良い)答えを補うために、ファイルに何かを置くことに焦点を当てます。この場合、3つのランダムな英語の単語とランダムな数字です。

$ for a in {001..009}
do
(shuf -n 3 /usr/share/dict/words ; echo $RANDOM)  > FILE_$a
done

生成されたファイルの例:

$ cat FILE_005
atrophy
grays
backdate
9612

関連情報