Вы можете использовать dd для этой цели:
dd if=/dev/urandom bs=1024 count=5 of=dummy
- , если: = в файле
- из: = из файла
- bs: = размер блока
Обратите внимание, что
x=`expr $x + 1`;
не самый эффективный способ вычисления в bash.Выполните арифметическое целочисленное вычисление в двойных круглых скобках:
x=((x+1))
Но для увеличенного счетчика в цикле был изобретен цикл for:
x=0;
while [ $x -lt 100000 ];
do echo a >> dummy.zip;
x=`expr $x + 1`;
done;
в отличие от:
for ((x=0; x<100000; ++x))
do
echo a
done >> dummy.zip
Вот три вещи, на которые следует обратить внимание:
- , в отличие от [-case, вам не нужен интервал внутри паренсов.
- здесь вы можете использовать приращение префикса (или постфикса): ++ x
- перенаправление файла извлекается из цикла.Вместо 1000000 шагов открытия и закрытия файл открывается только один раз.
Но есть еще более простая форма цикла for:
for x in {0..100000}
do
echo a
done >> dummy.zip