Как создать файл определенного размера windows
Перейти к содержимому

Как создать файл определенного размера windows

  • автор:

Как создать файл определенного размера

date03.02.2011
useritpro
directoryУтилиты
commentsкомментариев 11

В повседневной работе по той или иной причине системному администратору периодически приходится создавать файлы определенного размера. Обычно необходимость в создании файла определенного размера возникает при тестировании различных подсистем, например вы хотите протестировать работу дисковых квот или фильтров электронной почты. Самый простой способ создать файл определенного размера – воспользоваться Windows-утилитой fsutil.exe. Эта утилита командной строки, которую можно использовать для управления дисковыми квотами, различными манипуляциями с объектами файловой системы, а также для выполнения различных манипуляций с файлами.

Например, вы тестируете работу модуля статистики вашего почтового сервера, и вам нужно создать файл размером 10 Мб и отправить его по почте. Наберите в командной строке с повышенными привилегиями следующую команду:

Как создать файл произвольного размера

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

Создание файла с помощью fsutil

Быстрее и проще всего создать файл с помощью утилиты командной строки fsutil. Для примера откроем консоль (обязательно с правами администратора) и создадим на диске E файл file.txt размером 1ГБ командой:

fsutil file createnew E:\File.txt 1000000000

Таким образом можно создать файл любого размера, причем файл создается практически мгновенно.

создание файла с помощью fsutil

Создание файла с помощью PowerShell

То же самое можно сделать с помощью PowerShell, хотя команды будут немного сложнее:

$file = New-Object -TypeName System.IO.FileStream -ArgumentList E:\File.txt,Create,ReadWrite
$file.SetLength(1000Mb)
$file.Close()

Здесь мы сначала создаем объект типа файл, а затем с помощью метода SetLength присваиваем ему необходимый размер. Таким способом также можно мгновенно создать файл любого размера.

создание файла с помощью PowerShell, способ 1

Есть и еще один, альтернативный способ создания файла с помощью PowerShell. Если в первом случае мы создавали файл и задавали его размер, то здесь создаем содержимое нужного размера и помещаем это содержимое в указанный файл. Например:

$content = New-Object -TypeName Byte[] -ArgumentList 10Mb
Set-Content -Path E:\File.txt -Value $content -Encoding Byte

создание файла с помощью PowerShell, способ 2

При использовании этого метода создание файла занимает некоторое время, зависящее от размера файла. Кроме того, с его помощью невозможно создать файл большого размера. Максимальный размер файла ограничен встроенным значением [int]::MaxValue и при его превышении будет выдана ошибка ″Array dimentions exceeded supported range″.

ошибка при создании файла

Все описанные способы создают пустые файлы (точнее файлы, заполненные символом NUL). Если надо создать файл заданного размера и заполнить его каким либо произвольным содержимым, то можно немного изменить предыдущий способ и воспользоваться такими командами:

$array = New-Object -TypeName Byte[] -ArgumentList 10Mb
$obj = New-Object -TypeName System.Random
$obj.NextBytes($array)
Set-Content -Path E:\File.txt -Value $array -Encoding Byte

создание файла и заполнение его данными

Ну и для генерации большого количества файлов (напр. 1000) можно воспользоваться таким скриптом:

$array = New-Object -TypeName Byte[] -ArgumentList 10Mb
$obj = New-Object -TypeName System.Random
$obj.NextBytes($array)
for ($i=1; $i -le 1000; $i++) <
Set-Content -Path E:\File.txt$i -Value $array -Encoding Byte
>

Работает небыстро, но для ускорения можно запустить скрипт в несколько потоков.

Как создать файл определенного размера

Иногда в тестовых или рабочих целях возникает необходимость создания файла со строго заданным размером. Содержание при этом не играем никакой роли. Допустим, для отладки программ или измерения пропускной способности. Как решить подобную задачу? Многочисленных владельцев новомодной Windows XP спасет в таком случае волшебная утилита под названием Fsutil. Просто набираем в режиме командной строки следующий текст заданного формата и жмем Enter:

Например, если нам нужно создать файл example.txt размером 1 Мб в директории c:\test\ example.txt, то вводим следующую команду:

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

Обладатели других операционных систем вправе воспользоваться услугами сторонних утилит, например, BigByte. При помощи этой крохотной бесплатной программы (205 кб) можно создать файл абсолютно любого размера, хоть терабайтного — главное, чтобы хватило места на жестком диске.

Достаточно запустить приложение (bigbyte.exe), указать название будущего файла, выбрать желаемый размер, нажать кнопку Create и отыскать сохраненные данные в рабочей папке утилиты.

Чтобы лишний раз не морочить голову приставками кило-, мега-, гига-, тера- (кратность которых в компьютерной среде равна 1024=2 10 ) и сопутствующими математическими выкладками, разработчики BigByte пошли навстречу пользователям и добавили возможность выбора кратных единиц.

Создаем файл определенного размера в Windows

Создаем файл. Иногда может потребоваться создать для тестирования какой-то системы файл определенного размера. Операционная система ОС Windows предлагает два пути решения.

Создание файла с помощью fsutil

Быстрее и проще всего создать файл с помощью утилиты командной строки fsutil. Для примера откроем консоль (обязательно с правами администратора) и создадим на диске E файл file.txt размером 1ГБ командой:

Таким образом можно создать файл любого размера, причем файл создается практически мгновенно.

Создаем файл определенного размера в Windows

Создаем файл с помощью PowerShell

То же самое можно сделать с помощью PowerShell, хотя команды будут немного сложнее:

Здесь мы сначала создаем объект типа файл, а затем с помощью метода SetLength присваиваем ему необходимый размер. Таким способом также можно мгновенно создать файл любого размера. Полезная статья по PowerShell.

Создаем файл определенного размера в Windows

Есть и еще один, альтернативный способ создания файла с помощью PowerShell. Если в первом случае мы создавали файл и задавали его размер, то здесь создаем содержимое нужного размера и помещаем это содержимое в указанный файл. Например:

При использовании этого метода создание файла занимает некоторое время, зависящее от размера файла. Кроме того, с его помощью невозможно создать файл большого размера. Максимальный размер файла ограничен встроенным значением [int]::MaxValue и при его превышении будет выдана ошибка ″Array dimentions exceeded supported range″.

Создаем файл определенного размера в Windows

Все описанные способы создают пустые файлы (точнее файлы, заполненные символом NUL). Если надо создать файл заданного размера и заполнить его каким либо произвольным содержимым, то можно немного изменить предыдущий способ и воспользоваться такими командами:

Создаем файл определенного размера в Windows

Создаем файл. Генерация большого количества файлов (напр. 1000) можно воспользоваться таким скриптом:

Работает небыстро, но для ускорения можно запустить скрипт в несколько потоков.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *