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

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

П ри тестировании разного рода подсистем нередко приходится создавать файлы определённого объёма. Например, это может понадобиться при проверке работы почтовых или каких-либо других фильтров, в которых применяется ограничение на объём передаваемых данных, а также при тестировании дисковых квот. Конечно, для этих целей можно использовать массив, скажем, из текстовых файлов, но это неудобно, да и точности добиться в таком случае будет очень сложно.

Так вот, в Windows есть специальная консольная утилита, которая позволяет создавать файлы определённого размера. Называется она fsutil.exe . Допустим, вам нужно создать файл размером 10 Мб. Откройте командную строку от имени администратора и выполните в ней вот такую команду:


В результате выполнения команды в корне диска D будет создан файл test10mb.txt размером 10485760 байт или 10 Мб. Это будет не совсем обычный текстовый файл и если вы его откроете в Notepad++ или шестнадцатеричном редакторе, то увидите, что он полностью заполнен нулевыми значениями. Кстати, вместо расширения TXT можно использовать BIN — результат будет тот же.

Как создать файл любого размера и любого формата?

Как создать файл любого размера в любом формате?

Привет читателям блога Компьютер76, сегодня мы попробуем один трюк, с помощью которого можно потроллить соседей по офису, подшутить над друзьями и просто позабавиться на реакцию пользователя, который вдруг обнаружит, что…

В Windows вдруг появился файл, который занимает громадное пространство и даёт системе нормально функционировать. С помощью этого трюка можно в один момент заполнить всё свободное пространство, например, флешки.

Как это работает?

Если вы не впервые на страницах моего сайта, вы поняли, что в Windows много скрытых инструментов, о которых сама Windows ни одному пользователю предпочитает не рассказывать. Одна из таких бесчисленных встроенных утилит Fsutil.exe. Её основное предназначение – системные операции с файлами из командной строки. Она-то и поможет нам создать файл любого размера с любым понравившимся нам расширением. Да, нас снова понадобится консоль команд (работаем с правами админа). В Windows XP её не ищите – утилита входит в комплект Windows со времён Vista.

ОТСТУПЛЕНИЕ

Такие приколы могут создаваться и программами сторонних разрабов. Мне известны утилиты типа Dummy File Creator или Disk tools toolkit. Также, это умеет делать троян, поглощающий всё свободное пространство диска, маскируясь под антивирус.

Как создать файл любого размера: что умеет сама Windows?

Синтаксис нашей команды в утилите fsutil на создание файла выглядит так:

Отсюда следует, если мы хотим создать текстовый файл в корне системного диска размером 1 Кб (в байтах) и именем TEST, нам придётся в консоли написать командой:

Как вы догадались, можно создать файл любого размера и в любом формате в ЛЮБОМ месте, где бы вы не пожелали. Если файл нужен конкретных размеров, а его размер имеет для вас значение, лучше, конечно, воспользоваться конвертером единиц для перевода байт в кило-, мега– и гигабайты.

Итак, наш файл, конечно, пустой и не несёт никакого в себе содержания. Присвойте ему любое расширение – он же всё равно пуст. Текстовый файл, к примеру, можно заполнить произвольным текстом, в том числе из той же fsutil. Зачем? Дело в том, что, например, текстовый файл огромных размеров, заполненный информацией, при открытии немедленно вызовет как минимум зависание программы, с помощью которой жертва попытается этот документ открыть: Блокнот или ещё что… Но согласитесь, заполнять текстовый документ осмысленным содержанием через командную строку – всё равно что чесать пятку через штанину.

Читайте также:  Как заставить windows зависнуть

Ну и дополнить издевательство над пользователем можно присвоив документу (или фильму, фотографии, музыкальному треку) атрибут Скрытый. И если у жертвы в Свойствах папки не стоит Отображать скрытые файлы и папки, он потратит много времени на поиски того, куда подевалось пространство на диске. Так, созданный файл можно спрятать прямо сейчас, не закрывая консоли. Допишите вторую команду в виде:

Быстрое создание большого файла в системе Windows

в том же духе, что и быстро создайте большой файл в системе Linux, Я хотел бы быстро создать большой файл в системе Windows. По большому счету я думаю 5 ГБ. Содержание не имеет значения. Встроенная команда или короткий пакетный файл были бы предпочтительнее, но я приму приложение, если нет других простых способов.

20 ответов:

fsutil хотя требует административных привилегий.

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

Если вы хотите создать файл с реальными данными, то вы можете использовать ниже скрипта.

(указанные выше две команды, одна за другой, или вы можете добавить их в пакетный файл.)

вышеуказанные команды создают фиктивный файл размером 1 МБ.txt, в течение нескольких секунд.

RDFC, вероятно, не самый быстрый, но он выделяет блоки данных. Абсолютно быстрый должен был бы использовать API более низкого уровня, чтобы просто получить цепочки кластеров и поместить их в таблицы без записи данных.

остерегайтесь, что здесь нет серебряной пули — если «создание» возвращается мгновенно, это означает, что у вас есть разреженный файл, который просто подделывает большой файл, но вы не получите блоки данных / цепочки, пока вы не запишете в него. Если вы просто читаете, вы получите очень быстрые нули, которые могут заставить вас поверить, что ваш диск внезапно стал невероятно быстрым 🙂

это похоже на mkfile на Solaris.

мне нужен был обычный 10 ГБ файл для тестирования, поэтому я не мог использовать fsutil потому что он создает разреженные файлы (спасибо @ZXX).

Я хотел создать файл 10 ГБ, но по какой-то причине он появился только как 4 ГБ, поэтому я хотел быть в безопасности и остановился на 4 ГБ. Если вы действительно хотите быть уверены, что ваш файл будет правильно обработан операционной системой и другими приложениями, прекратите его расширение на 1 ГБ.

он заполняет целевой файл случайными данными, поэтому нет проблем с разреженными файлами, и для моих целей (тестирование алгоритмов сжатия) он дает хороший уровень белого шума.

Откройте Диспетчер задач Windows, найдите самый большой процесс, который у вас работает щелкните правой кнопкой мыши и нажмите на Create dump file .

это создаст файл относительно размера процесса в памяти во временной папке.

Читайте также:  Дефолтные иконки windows 10

вы можете легко создать файл размером в гигабайт.

PowerShell one-liner для создания файла в C:\Temp заполнить диск C:, оставив только 10 МБ:

за исключением написания полного приложения, ребята из США Python могут создавать файлы любого размера с четырьмя строками, один и тот же фрагмент в Windows и Linux ( os.stat() строка — это просто проверка):

обычный ol ‘ C. это строит под MinGW GCC на Windows XX и должно работать на любой универсальная платформа с.

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

мой экземпляр создает файл полные нули — это может варьироваться в зависимости от платформы; это программа по существу устанавливает вверх по структуре каталогов для любых данных висит вокруг.

Я нашел решение с помощью DEBUG at http://www.scribd.com/doc/445750/Create-a-Huge-File, но я не знаю простого способа его написания, и он, похоже, не может создавать файлы размером более 1 ГБ.

. 1 MB файл пустышка.txt, в течение нескольких секунд.

временные файлы должны храниться в папке Windows Temp. На основе ответ от штанги вы можете использовать следующий лайнер для создания 5 ГБ временного файла, который возвращает имя файла

  • [System.IO.Path]::GetTempFileName() генерирует случайное имя файла со случайным расширением в папке Temp Windows
  • конвейер используется для передачи имени [System.IO.File]::Create($_) который создает файл
  • имя файла имеет значение недавно созданный файл с .SetLength(5gb) . Я был немного удивлен, обнаружив, что PowerShell поддерживает Байт Преобразования, что очень полезно.
  • дескриптор файла должен быть закрыт с .close чтобы другие приложения могли получить к нему доступ
  • С ;$_ имя файла возвращается и с | ? < $_ >гарантируется, что возвращается только имя файла, а не пустая строка, возвращаемая [System.IO.File]::Create($_)

недавно я искал способ создать большой фиктивный файл с выделением пространства. Все решения выглядят неловко. Наконец — то я только начал DISKPART утилита в Windows (встроенная с Windows Vista):

здесь максимум — это результирующий размер файла, 20 ГБ здесь.

простой ответ на Python: если вам нужно создать большой настоящий текстовый файл, я просто использовал простой while цикл и смог создать файл 5 ГБ примерно за 20 секунд. Я знаю, что это грубо, но это достаточно быстро.

вы можете попробовать этот код на C++:

возможно, потребуется некоторое время для генерации в зависимости от скорости вашего процессора.

быстро выполнить или быстро ввести на клавиатуре? Если вы используете Python на Windows, вы можете попробовать это:

Я сделал некоторые дополнения к тому же fsutil метод, как указано в выбранном ответе. Это делается для создания файлов различных расширений и / или различных размеров.

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

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

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

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

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

Читайте также:  Windows 10 уже сегодня

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

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

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

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

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

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

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

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

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

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

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

fsutil file createnew E:\File.txt 1000000000

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

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

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

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

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

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

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

При использовании этого метода создание файла занимает некоторое время, зависящее от размера файла. Кроме того, с его помощью невозможно создать файл большого размера. Максимальный размер файла ограничен встроенным значением [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
>

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

Оцените статью
Adblock
detector