Использование BSD jot для создания файла со случайным контентом

Ответить с цитированием

Большинство систем Linux поставляется с GNU seq (утилитой для генерации последовательностей чисел или символов). Однако гораздо более старая утилита – и более гибкая – недоиспользуемая и неизвестная утилита, jot. Каждая система BSD, включая MacOS X, будет поставляться с jot (а не с seq).

(…)

На самом деле для генерации большого файла (в этом случае 5Gb) попробуйте следующее:

jot -r -c -s '' $(( 1024 * 1024 * 5 )) > file.5gb 

Когда я пытаюсь это сделать, он генерирует файл размером 5 МБ.

 jot -r -c -s '' $(( 1024 * 1024 * 5 )) > file.5gb du -sh file.5gb 5.0M file.5gb 

Что делает эта команда? Как указать размер, например, 2 ГБ файла? Является ли это рекомендуемым способом генерации случайных файлов содержимого в macOS? Используете ли вы другие инструменты для файлов случайного контента?

seq не может генерировать случайный контент. Это верно?

  • Найти все файлы и использовать результат в шаблоне поиска grep
  • Как выводить сравнение значений в отдельных файлах
  • Bash: как получить значение из массива для создания команды из него
  • Сценарий Bash с `set -e` не останавливается на команде` ... && ... `
  • Расширение «$ @» для пользовательских переменных
  • Как определить, когда оболочка принадлежит удаленному сеансу SSH?
  • Как запустить два потока в сценарии оболочки bash?
  • Сценарий Bash для открытия экранов и компиляции того же файла
  • One Solution collect form web for “Использование BSD jot для создания файла со случайным контентом”

    Пример немного неправильный, и результат правильный. Позволь мне объяснить.

    $(( 1024 * 1024 * 5 )) – это просто сумма, но она будет работать только в среде оболочки sh . Например:

     sh echo $(( 1024 * 1024 * 5)) 5242880 

    Эта часть отсортирована, назад к jot . -r для «случайных данных», и это должно быть то, что вы найдете в файле.

    -c является сокращением, и тем же, что и с -w %c . Хотя я не совсем уверен, что означает %c , он, похоже, создает один байт случайных данных. Вы можете поменять -c на -bx и вы получите тот же файл размера, но он будет содержать только x повторяющийся.

    Далее – -s '' что означает, что никакая строка не возвращается. Без этого после каждого символа (или случайных данных) будет возвращаться строка. Ваш файл также должен быть в два раза больше.

    Следующая часть – $(( 1024 * 1024 * 5 )) . Это количество «данных» для производства. Как показано выше, эта сумма составляет номер 5242880 (который составляет всего 5 Мбайт), и насколько велика будет файл размером 1 байт для возврата задней линии. Например:

     sh jot -r -c -s '' $(( 1024 * 1024 * 5 )) > file.5mb ls -al file.5mb -rw-r--r-- 1 tigger tigger 5242881 2 Apr 15:39 file.5mb 
    Interesting Posts

    Как узнать, что делать в dmesg?

    Потеряна загрузка Win7 после установки UBUNTU Vivid

    Перенаправление без цвета

    Неспособная игра для создания пользователя, не устанавливающего пароль

    Повернуть файл PDF менее 90 градусов?

    Проблема с корневым устройством Arch linux в '/ dev / mapper / MyStorage-rootvol'

    Как установить параметры автоматического монтирования по умолчанию для съемных носителей?

    Как переделать комбинацию клавиш в другую?

    Проблема с использованием списков контроля доступа для новых пользователей, например (папка, созданная в skel directoy, имеет набор acl, она должна применяться к новым пользователям)

    Заменить колонку с результатом команды

    Удаление дополнительных нерабочих сканеров

    CentOs 6-x_64 Настройка переменной DISPLAY

    не может создать символическую ссылку на CentOS 5.6 – Ошибка файла

    есть ли способ получить более новые пакеты при использовании дистрибутива debian?

    ttyUSBx восстанавливается до x> 255 и останавливается

    Linux и Unix - лучшая ОС в мире.