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

Содержание
  1. Как создать файл в терминале
  2. 1. Редактор nano
  3. 2. Редактор Vi
  4. 3. Оператор перенаправления >
  5. 4. Оператор перенаправления вывода >>
  6. 5. Оператор перенаправления 2>
  7. 6. Оператор перенаправления и head
  8. 7. Команда cp
  9. 8. touch
  10. 9. Утилита dd
  11. Создание специальных файлов в Linux
  12. Выводы
  13. Как создать файл в Linux: 12 способов
  14. Создание пустого файла при помощи touch
  15. Создание сразу нескольких пустых файлов при помощи touch
  16. Создание пустого файла при помощи echo
  17. Трюк для создания пустых файлов
  18. Создание файла с содержимым
  19. Создание файла путем объединения других файлов с помощью cat
  20. Создание файла с помощью любой команды и символа >
  21. Создание файла при помощи редактора nano
  22. Создание файла при помощи текстового редактора Vim
  23. Создание файла определенного размера c помощью fallocate
  24. Создание файла определенного размера с помощью dd
  25. Создание файла-сокета c помощью команды mkfifo
  26. Создание файла при помощи HEREDOC

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

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

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

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

1. Редактор nano

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

files

2. Редактор Vi

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

files1

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

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

Читайте также:  Поменять атрибуты файла linux

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

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

files2

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

files3

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

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:

8. touch

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

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

files8

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

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

Читайте также:  Просмотр всех разделов linux

touch -t 201601081830.14 файл

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

Также можно установить дату последней модификации, с помощью опции -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. Если вы знаете другие, которые следовало бы добавить в статью — поделитесь в комментариях.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

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

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

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

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

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

touch file1.txt file2.txt file3.txt

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

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

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

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

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

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

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

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

$ cat file1 file2 file3 > big_file

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

Читайте также:  Открыть файл tgz linux

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

This text is added by Here Document

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

Источник

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