Случайная генерация тестовых файлов переменного размера - PullRequest
4 голосов
/ 07 декабря 2010

Вот скрипт, который я планирую использовать для генерации 500 тестовых файлов, заполненных случайными данными.

for((counter=1;counter<=500;counter++));
          do
             echo Creating file$counter;
             dd bs=1M count=10 if=/dev/urandom of=file$counter;

               done

Но мне нужен скрипт, чтобы эти 500 файлов имели переменный размер, скажем, между 1М и 10М; т.е. файл1 = 1М, файл2 = 10М, файл3 = 9М и т. д. *

любая помощь?

Ответы [ 3 ]

5 голосов
/ 07 декабря 2010

В результате будет создано 500 файлов, каждый из которых содержит от 1 до 10 мегабайт случайных байтов.

#!/bin/bash
max=10    # number of megabytes
for ((counter=1; counter<=500; counter++))
do
    echo Creating file$counter
    dd bs=1M count=$(($RANDOM%max + 1)) if=/dev/urandom of=file$counter
done

Вторая строка может быть:

for counter in {1..500}
3 голосов
/ 07 декабря 2010
set MAX=10
for((counter=1;counter<=500;counter++));
do
  echo "Creating file$counter"
  dd bs=$(( ($RANDOM%$MAX)+1  ))M count=10 if=/dev/urandom of=file$counter
done
1 голос
/ 07 декабря 2010

Попробуйте $((1+$RANDOM%$MAX))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...