Перейти к содержимому

Как создать файл в linux

  • автор:

Создание файла в Linux

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

Как создать файл в Linux

Содержание

  • Введение
  • Требования
  • Приёмы создания нового файла в Linux
    • Использование команды touch
    • Использование оператора перенаправления
    • Использование команды cat
    • Использование команды echo
    • Использование текстового редактора Vim

    Введение

    Знание того, как создать новый файл, является важным навыком для любого пользователя операционной системы Linux. В этой статье показаны различные способы быстрого создания нового файла в Linux с помощью командной строки.

    Требования

    Вы должны иметь следующее:

    • доступ к окну терминала (командной строке);
    • учётную запись пользователя с привилегиями sudo (для некоторых файлов и каталогов необязательно).

    Приёмы создания нового файла в Linux

    Использование команды touch

    Для создания файла команда touch используется без параметров:

    oleg@mobile:~/Directory:$ touch example oleg@mobile:~/Directory:$ ls -l итого 0 -rw-r--r-- 1 oleg users 0 авг 17 12:09 example oleg@mobile:~/Directory:$ 

    Эта же команда позволяет создать и несколько файлов одновременно:

    oleg@mobile:~/Directory:$ touch example_1 example_2 example_3 oleg@mobile:~/Directory:$ ls -l итого 0 -rw-r--r-- 1 oleg users 0 авг 17 12:11 example_1 -rw-r--r-- 1 oleg users 0 авг 17 12:11 example_2 -rw-r--r-- 1 oleg users 0 авг 17 12:11 example_3 oleg@mobile:~/Directory:$ 

    Использование оператора перенаправления

    Введите оператор перенаправления > и затем имя создаваемого файла:

    oleg@mobile:~/Directory:$ > example oleg@mobile:~/Directory:$ ls -l итого 0 -rw-r--r-- 1 oleg users 0 авг 17 12:13 example oleg@mobile:~/Directory:$ 

    Символ > является символом перенаправления, а не командой, но если его поставить перед именем создаваемого файла, то в текущем каталоге появится новый пустой файл.

    Использование команды cat

    Запустите команду cat , затем введите оператор перенаправления > и имя создаваемого файла. Нажмите Enter, при желании введите необходимый текст и нажмите CRTL+D для сохранения файла:

    oleg@mobile:~/Directory:$ cat > example Как хочу, так и ворочу. oleg@mobile:~/Directory:$ oleg@mobile:~/Directory:$ ls -l итого 4 -rw-r--r-- 1 oleg users 40 авг 17 12:19 example oleg@mobile:~/Directory:$

    Использование команды echo

    Для создания пустого файла запустите команду echo , затем введите оператор перенаправления > и имя создаваемого файла:

    oleg@mobile:~/Directory:$ echo > example oleg@mobile:~/Directory:$ ls -l итого 4 -rw-r--r-- 1 oleg users 1 авг 17 12:32 example oleg@mobile:~/Directory:$ 

    Для создания файла с текстом запустите команду echo , затем введите необходимый текст, после текста введите оператор перенаправления > и имя создаваемого файла:

    oleg@mobile:~/Directory:$ echo "Что хочу, то и пишу." > example Что хочу, то и пишу. example oleg@mobile:~/Directory:$ ls -l итого 4 -rw-r--r-- 1 oleg users 35 авг 17 12:36 example oleg@mobile:~/Directory:$ 

    Использование текстового редактора Vim

    Для этого вводится команда vim и имя создаваемого файла:

    oleg@mobile:~/Directory:$ vim example

    После нажатия Enter ваш экран изменится, так как вы будете находиться в текстовом редакторе. При желании ввести текст нажмите клавишу i:

    Создание нового файла в Linux с помощью текстового редактора Vim

    По окончании набора текста сохраните файл, введя:

    Esc :wq Enter
    oleg@mobile:~/Directory:$ ls -l итого 0 -rw-r--r-- 1 oleg users 0 авг 17 12:42 example oleg@mobile:~/Directory:$ 

    Заключение

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

    Как создать файл в Linux: 12 способов

    Эти способы тестировались на дистрибутиве Ubuntu, но будут работать на любой системе Linux.

    Создание пустого файла при помощи touch

    $ touch filename

    Пояснение: Команда touch предназначена для того, чтобы поменять дату изменения файла на текущую. Однако ее также часто используют для создания файлов.

    Создание сразу нескольких пустых файлов при помощи touch

    touch file1.txt file2.txt file3.txt

    Создание пустого файла при помощи echo

    $ echo > filename

    Пояснение: Команда echo предназначена для вывода на экран строки, которая в нее передается. Символ > перенаправляет вывод в файл. Соответственно мы перенаправили пустоту в файл.

    Трюк для создания пустых файлов

    $ > filename

    Пояснение: символ > перенаправляет вывод, а мы ничего не выводим, просто перенаправляем пустоту в файл. Это самый короткий способ создать пустой файл.

    Или лучше такой пример:

    $ : > file

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

    Создание файла с содержимым

    $ echo '123' > filename

    Пояснение: Выводим строку 123 и перенаправляем этот вывод в файл. Файл будет содержать строку 123

    Создание файла путем объединения других файлов с помощью cat

    $ cat file1 file2 file3 > big_file

    Пояснение: Команда cat выводит на экран содержимое на экран, однако мы перенаправляем этот вывод в файл. Соответственно мы создали файл big_file в котором находится содержимое из трех других файлов.

    Создание файла с помощью любой команды и символа >

    Мы можем создать файл, с помощью команд, которые выводят что-то на экран, записав этот вывод в файл. Например ps aux выводит информацию о текущих процессах в системе. Мы просто можно записать весь вывод этой команды в файл file.txt и потом его проанализировать.

    $ ps aux > file.txt

    Записываем в файл справку по команде man :

    man man > file.txt

    Записываем в файл календарь на 2021 год

    cal 2021 > 2021.txt

    Создание файла при помощи редактора nano

    $ nano filename.txt

    Этот редактор чуть более привычный простому пользователю, чем Vim, однако он должен быть установлен в вашей системе.

    Иначе вы получите ошибку о несуществующей команде Command ‘nano’ not found .

    Проверить установлен ли nano в вашей системе можно с помощью следующей команды:

    $ nano --version

    Результатом будет информация об установленном редакторе:

    GNU nano, version 2.9.3 (C) 1999-2011, 2013-2018 Free Software Foundation, Inc. (C) 2014-2018 the contributors to nano Email: nano@nano-editor.org Web: https://nano-editor.org/ Compiled options: --disable-libmagic --disable-wrapping-as-root --enable-utf8

    Либо сообщение об ошибке: Command ‘nano’ not found

    Создание файла при помощи текстового редактора Vim

    $ vi filename.txt

    Если вы никогда не работали с этим редактором, то этот способ вам не подойдет, т.к. без пары часов за документацией Vim не освоить.

    На всякий случай скажу вам способ выйти из этого редактора, т.к. даже это совершенно не очевидно: нажмите Esc , затем : затем введите q! затем нажмите Enter — это способ выхода без сохранения. Для сохранения нужно набрать x! вместо q

    Создание файла определенного размера c помощью fallocate

    $ fallocate -l 10M hello.txt

    Таким образом вы создали файл hello.txt размером 10 мегабайт.

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

    $ dd if=/dev/zero of=hello.txt bs=10M count=1

    Создание файла-сокета c помощью команды mkfifo

    $ mkfifo foo.sock

    После создания вам нужно установить на него права, чтобы нужные программы могли им пользоваться

    Создание файла при помощи HEREDOC

    $ cat file.txt > This text is > added by Here Document > EOF

    Пояснение: мы сначала пишем cat file.txt причем вместо EOF может быть любая строка, которой нет в тексте, который мы собираемся написать. Затем когда мы завершили заполнение многострочного файла, просто переходим на следующую строку и вводим EOF. В итоге содержимое нашего файла будет:

    This text is added by Here Document

    Спасибо за внимание! Если вы знаете какой-нибудь интересный и полезный способ создания фалов — напишите его в комментариях.

    Как создать файл в Linux

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

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

    Подготовка

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

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

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

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

    Самый простой и запоминающийся способ создания новых пустых файлов — использовать touch команду.

    Чтобы создать новый файл, просто запустите touch команду, после которой укажите имя файла, который вы хотите создать:

    touch file1.txt

    Если файл file1.txt не существует, приведенная выше команда создаст его, в противном случае она изменит свои временные метки.

    Чтобы создать сразу несколько файлов, укажите имена файлов через пробел:

    touch file1.txt file2.txt file3.txt

    Создание файла с помощью оператора перенаправления

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

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

    > file1.txt

    Это самая короткая команда для создания нового файла в Linux.

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

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

    Команда cat в основном используется для чтения и объединения файлов, но ее также можно использовать для создания новых файлов.

    Чтобы создать новый файл, выполните команду cat, за которой следует оператор перенаправления > и имя файла, который вы хотите создать. Нажмите Enter введите текст и, когда вы закончите, нажмите CRTL+D чтобы сохранить файлы.

    cat > file1.txt

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

    Команда echo печатает строки, которые передаются в качестве аргументов в стандартный вывод, который можно перенаправить в файл.

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

    echo "Some line" > file1.txt

    Если вы хотите создать пустой, просто используйте:

    echo > file1.txt

    Создание файла с использованием Heredoc

    Здесь документ или Heredoc — это тип перенаправления, который позволяет передавать команде несколько строк ввода.

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

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

    cat file1.txtSome lineSome other lineEOF

    Тело heredoc может содержать переменные, специальные символы и команды.

    Создание большого файла

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

    Использование команды dd

    Команда dd в основном используется для преобразования и копирования файлов.

    Чтобы создать файл с именем 1G.test размером 1 ГБ, выполните:

    dd if=/dev/zero of=1G.test bs=1 count=0 seek=1G

    Использование команды fallocate

    fallocate командной строки для выделения реального дискового пространства для файлов.

    Следующая команда создаст новый файл с именем 1G.test размером 1 ГБ:

    fallocate -l 1G 1G.test

    Выводы

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

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

    Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.

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

    Философия Linux гласит — всё в системе есть файл. Мы ежедневно работаем с файлами, и программы, которые мы выполняем, — тоже файлы. В разных случаях нам может понадобиться создать в системе файлы определённого типа. Если вам интересно, какие типы файлов в Linux можно создать, смотрите отдельную статью.

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

    Как всё это делать, вы узнаете из этой статьи. Мы рассмотрим все доступные средства создания файлов в терминале Linux. Поехали!

    1. Редактор nano

    Самый распространённый способ создать текстовый файл в Linux — это использовать консольные текстовые редакторы. Например nano. После ввода команды открывается редактор, и вы прописываете нужный текст, например:

    files

    2. Редактор Vi

    Тот же принцип, но программа намного серьёзнее:

    files1

    Если вы в первый раз столкнулись с vim, то предупрежу — это необычный редактор. Здесь есть два режима: режим вставки и командный. Переключаться между ними можно с помощью кнопки Esc. Для выхода из редактора в командном режиме наберите :q, для сохранения файла — :w. Вообще, Vim — очень полезный инструмент. Чтобы узнать побольше о его возможностях и выучить основы, выполните: vimtutor.

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

    3. Оператор перенаправления >

    Это, наверное, самая короткая команда для создания файла в Linux:

    files2

    Оператор оболочки для перенаправления вывода позволяет записать вывод любой команды в новый файл. Например, можно подсчитать md5 сумму и создать текстовый файл в Linux с результатом выполнения.

    md5sum файл > ~/sum.md5

    files3

    Это рождает ещё несколько способов создания файла в Linux, например, выведем строку в файл с помощью команды echo:

    echo «Это строка» > файл.txt

    files4

    Этот способ часто используется для создания конфигурационных файлов в Linux, так сказать, на лету. Но заметьте, что sudo здесь работать не будет. С правами суперпользователя выполниться echo, а запись файла уже будет выполнять оболочка с правами пользователя, и вы всё равно получите ошибку Access Denied.

    Ещё тем же способом можно сделать примитивный текстовый редактор для создания файла. Утилита cat без параметров принимает стандартный ввод, используем это:

    files5

    После выполнения команды можете вводить любые символы, которые нужно записать в файл, для сохранения нажмите Ctrl+D.

    А ещё есть утилита printf, и здесь она тоже поддерживает форматирование вывода:

    printf «Это %d текстовая строка\n» 1 > файл

    files6

    Этот способ создать файл в Linux используется довольно часто.

    4. Оператор перенаправления вывода >>

    Также можно не только перезаписывать файл, а дописывать в него данные, с помощью перенаправления оператора >>. Если файла не существует, будет создан новый, а если существует, то строка запишется в конец.

    echo «Это текстовая строка» > файл.txt
    $ echo «Это вторая текстовая строка» >> файл.txt

    files7

    5. Оператор перенаправления 2>

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

    file11

    Если команда не выдает ошибок, файл будет пустым.

    6. Оператор перенаправления и head

    С помощью команды head можно выбрать определённый объем данных, чтобы создать текстовый файл большого размера. Данные можно брать, например, с /dev/urandom. Для примера создадим файл размером 100 мегабайт:

    base64 /dev/urandom | head -c 100M > файл

    7. Команда cp

    Команда cp используется для копирования файлов в Linux. Но с её помощью можно и создать файл. Например, чтобы создать пустой файл, можно просто скопировать /dev/null:

    cp /dev/null файл

    8. touch

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

    Чтобы создать пустой файл Linux, просто наберите:

    files8

    Можно создать несколько пустых файлов сразу:

    touch файл1 файл2

    Опция -t позволяет установить дату создания. Дата указывается опцией -t в формате YYMMDDHHMM.SS. Если не указать, будет установлена текущая дата. Пример:

    touch -t 201601081830.14 файл

    Можно использовать дату создания другого файла:

    touch -r шаблон файл

    Также можно установить дату последней модификации, с помощью опции -m:

    touch -m -t 201601081830.14 файл

    Или дату последнего доступа:

    touch -a -t 201601081830.14 файл

    Чтобы посмотреть, действительно ли задаётся информация, которую вы указали, используйте команду stat:

    files9

    9. Утилита dd

    Это утилита для копирования данных из одного файла в другой. Иногда необходимо создать файл определённого размера в Linux, тогда можно просто создать его на основе /dev/zero или /dev/random, вот так:

    dd if=/dev/zero of=~/файл count=20M

    files10

    Параметр if указывает, откуда брать данные, а of — куда записывать, count — необходимый размер. Ещё можно указать размер блока для записи с помощью bs, чем больше размер блока, тем быстрее будет выполняться копирование.

    Создание специальных файлов в Linux

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

    Выводы

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

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

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