bashコード内でのbash

<random_number.sh>


#!/bin/sh for idx in$(seq 1 50) //50回繰り返し   do     echo $((RANDOM%+32))  //0~31までの範囲指定   done bash random_number.sh > random_test.txt  //bash random_number.shの出力をrandom_test.txtに書き込み

上記のコードを動かしてみると、一回分の処理が終わった後急に重くなり

random_numbers.sh: fork: Cannot allocate memory

というエラーがでてしまった。

この原因はbash内でbash処理がループしたためであった。

また、上記の書き方では書き込みができないため、正しくは
<random_number.sh>


#!/bin/sh for idx in$(seq 1 50) //50回繰り返し   do     echo $((RANDOM%+32)) >> random_test.txt  //bash random_number.shの出力をrandom_test.txtに追記   done

と書き、50回繰り返すまでに”>>”で追記をしていく。