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

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

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

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

1. Редактор nano

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

nano файл.txt

files

2. Редактор Vi

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

vi файл.txt

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 без параметров принимает стандартный ввод, используем это:

cat > файл.txt

files5

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

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

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

files6

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

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

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

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

files7

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

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

date 2> файл

file11

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

6. Команда cp

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

cp /dev/null файл

7. touch

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

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

touch файл.txt

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:

stat файл

files9

8. Утилита dd

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

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

files10

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

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

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

Выводы

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

Creative Commons License
Статья Как создать файл в терминале распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.
Ваше имя тоже может быть здесь. Начните писать статьи для Losst. Это просто! Смотрите подробнее как начать писать статьи - Пишите для нас

Оцените статью:

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (5 оценок, среднее: 4,80 из 5)
Загрузка...

Ответить