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

Иногда при работе возникает необходимость в создании файлов определенного размера для тестирования или же иных целей. В Linux для этих целый можно воспользоваться несколькими способами. Один из способов создания файла определенного размера — это использование утилиты dd. Утилита dd позволяет создать файл с определенным именем и размером. Попробуем создать файл с именем «name-of-file» и размером в 33 Мб.

dd of=name-of-file bs=1 count=0 seek=33M

В результате получим такой вывод консоли:

admin@insideit:~> dd of=name-of-file bs=1 count=0 seek=33M
0+0 записей получено
0+0 записей отправлено
0 байт скопировано, 0,000146379 s, 0,0 kB/s

Для проверки созданного файла воспользуемся следующей командой:

ls -lh | grep name-of-file

Результат проверки созданного файла:

admin@insideit:~> ls -lh | grep name-of-file
-rw-r--r-- 1 admin users 33M фев 3 22:22 name-of-file

Также можно создать файл при помощи, утилиты которая называется truncate. С её помощью можно манипулировать с файлами и можно, например, задавать произвольный размер файла.

Создаем файлы с именем «file-name»

touch file-name

Задаем размер только что созданного файла «file-name»

truncate -s 33M file-name

Проверяем созданный файл

ls -lh | grep file-name

Размер файла при использовании утилиты truncate можно задавать как в байтах так и в килобайтах, мегабайтах или же в гигабайтах. Для получения файла размером в 33 Кб умножаем 33 на 1024 и в результате получаем 33792. Для получения размера файла в мегабайтах умножаем полученный размер еще раз на 1024 и получим результат 34603008 байт, что в переводе в мегабайты получается 33 Мб. Или же просто пишем 33M и получаем файл заданного размера в мегабайтах.

В обоих вариантах создания файлов мы создали файл без расширения с определенным размером. Для того чтобы задать расширение файла, можно после названия файла написать расширение через точку. Например, создадим текстовый файл с именем «text-file.txt»

touch text-file.txt

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

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