How to create a simple .txt (text) file using terminal? [closed]
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago .
I’m just trying to review basic terminal commands. Having said that, how do I create a text file using the terminal only?
5 Answers 5
You can’t use a terminal to create a file. You can use an application running in a terminal. Just invoke any non-GUI editor ( emacs -nw , joe , nano , vi , vim , …).
If you meant using the command line, then you are asking how to create a file using the shell. See What is the exact difference between a 'terminal', a 'shell', a 'tty' and a 'console'?
The basic way to create a file with the shell is with output redirection. For example, the following command creates a file called foo.txt containing the line Hello, world.
If you want to write multiple lines, here are a few possibilities. You can use printf .
You can use a string literal containing newlines.
Another possibility is to group commands.
On the command line, you can do this more directly with cat . Redirect its output to the file and type the input line by line on cat ‘s standard input. Press Ctrl + D at the beginning of the line to indicate the end of the input.
In a script you would use a here document to achieve the same effect:
If you just want to create an empty file, you can use the touch command: it creates the file if it doesn’t exist, and just updates its last-modified date if it exists.
i.e. open foo.txt for appending, but write 0 bytes to it — this creates the file but doesn’t modify it. Unlike touch , this doesn’t update the file’s last-modified date if it already existed.
To create an empty file, and remove the file’s content if the file already existed, you can use
Как создать файл в Linux через терминал
В Linux для хранения настроек операционной системы и установленных программ используются обычные текстовые файлы. Поэтому при настройке системы очень часто приходится работать именно с такими файлами. Одна из частых задач – создание новых файлов через терминал.
В этой инструкции мы рассмотрим именно этот вопрос. Здесь вы узнаете несколько наиболее простых и удобных способов создания текстовых файлов в Linux через терминал.
Команда touch
Если вам нужно создать пустой файл в Linux через терминал, то для этого проще всего использовать команду « touch ». Команда « touch » является стандартной командой, которая используется в операционной системе Linux для создания и изменения временных меток файла.
Также с ее помощью можно создавать новые файлы. Для этого достаточно просто ввести команду « touch » и через пробел указать название файла, который необходимо создать. Если такого файла не существует, то команда создаст новый, если же файл уже есть, то команда « touch » обновит его временные метки.
При необходимости с помощью « touch » можно создать сразу несколько документов. В этом случае через пробел нужно ввести несколько имен. В терминале Linux это выглядит это примерно так:
В дальнейшем, созданный документ можно отредактировать в любом текстовом редакторе. Например, можно использовать редактор Nano или Vim .
Нужно отметить, что у команды « touch » есть много дополнительных параметров для управления временными метками. Например, параметр « -c » позволяет отменить обновление временных меток, если файл уже существует. Чтобы узнать больше введите в терминал команду « man touch ».
Перенаправления вывода ( > )
Также для создания пустого файла можно использовать оператор перенаправления вывода ( > ). Для этого нужно ввести знак « больше » и указать имя. В терминале Linux это выглядит вот так:
Но, в данном случае нужно быть осторожным. Поскольку если файл уже существует, то он будет перезаписан.
Команда cat
Для создания небольшого текстового файла через терминал Linux можно использовать команду « cat » и уже упомянутый оператор перенаправления вывода.
Для этого нужно ввести команду « cat », знак « больше » (>) и название файла. После этого прямо в терминале можно ввести текст, который нужно сохранить в указанный документ. Для завершения ввода текста и сохранения нажимаем комбинацию клавиш Ctrl-D .
В терминале Linux данная команда выглядит примерно так:
Команда echo
Также с оператором перенаправления можно использовать и другие команды. Например, это может быть команда « echo », которая выводит текст. Если перенаправить ее вывод в файл, то система создаст указанный файл и сохранит в него текст.
При создании файлов с помощью оператора перенаправления нужно помнить, что вы можете перезаписать существующий документ. Также нужно отметить, что воспользоваться sudo не получится, поскольку в этом случае с правами суперпользователя будет выполняться команда « echo », а не запись.
Текстовые редакторы
Если вам нужно не просто создать файл, но также ввести в него много текста, то в этом случае удобнее всего будет использовать текстовые редакторы. Существует большое количество текстовых редакторов, которые запускаются прямо в терминале Linux и позволяют редактировать большие и сложные текстовые документы. Например, это такие редакторы как Nano , Vim и другие.
Текстовый редактор Nano установлен по умолчанию во многих дистрибутивах, а частности он есть в Ubuntu Linux. С Nano вы можете создать новый файл, сразу его отредактировать и сохранить. Для создания нового файла и перехода в редактор введите вот такую команду:
После ввода такой команды появится интерфейс редактора Nano . В верхней части экрана будет информация о версии программы и название файла, а в нижней панель со списком горячих клавиш.
Для сохранения нажмите Ctrl-X и потом введите букву «Y» для подтверждения.
Если в системе нет Nano, то возможно там будет предустановлен Vim. Чтобы создать файл с помощью Vim просто вводим команду « vim » и через пробел название файла. В терминале Linux это выглядит вот так:
Vim намного функциональней Nano, но при этом и намного сложнее. Одной из первых проблем, с которой сталкиваются новички, это выход из Vim. Для этого нужно нажать клавишу Esc, ввести вот такую команду и нажать Enter.
Если что-то не получается, то возможно проблема в раскладке клавиатуры. Переключитесь на английскую и попробуйте еще раз.
- Как удалить папку в Linux через терминал (консоль)
- Как открыть файл в терминале Linux
- Как скопировать файл в Linux через терминал
- Как удалить файл в Linux через терминал
- Как подключиться по SSH из Windows 10
Создатель сайта comp-security.net, автор более 2000 статей о ремонте компьютеров, работе с программами, настройке операционных систем.
Задайте вопрос в комментариях под статьей или на странице «Задать вопрос» и вы обязательно получите ответ.
Как создать файл в терминале
Философия Linux гласит — всё в системе есть файл. Мы ежедневно работаем с файлами, и программы, которые мы выполняем, — тоже файлы. В разных случаях нам может понадобиться создать в системе файлы определённого типа. Если вам интересно, какие типы файлов в Linux можно создать, смотрите отдельную статью.
Конечно, всё очень просто делается с помощью мышки и файлового менеджера. Но если вы дружите с клавиатурой, создать файл через терминал Linux намного быстрее и, как вы увидите, эффективнее. В терминале вы можете не только создавать пустые файлы, но и создавать файл с уже готовым содержимым, файлы определённого размера, и с нужными метаданными.
Как всё это делать, вы узнаете из этой статьи. Мы рассмотрим все доступные средства создания файлов в терминале Linux. Поехали!
1. Редактор nano
Самый распространённый способ создать текстовый файл в Linux — это использовать консольные текстовые редакторы. Например nano. После ввода команды открывается редактор, и вы прописываете нужный текст, например:
2. Редактор Vi
Тот же принцип, но программа намного серьёзнее:
Если вы в первый раз столкнулись с vim, то предупрежу — это необычный редактор. Здесь есть два режима: режим вставки и командный. Переключаться между ними можно с помощью кнопки Esc. Для выхода из редактора в командном режиме наберите :q, для сохранения файла — :w. Вообще, Vim — очень полезный инструмент. Чтобы узнать побольше о его возможностях и выучить основы, выполните: vimtutor.
Понятное дело, в этом пункте можно говорить и о других редакторах, в том числе и с графическим интерфейсом. Но мы их опустим и перейдём к другим командам создания файла в Linux.
3. Оператор перенаправления >
Это, наверное, самая короткая команда для создания файла в Linux:
Оператор оболочки для перенаправления вывода позволяет записать вывод любой команды в новый файл. Например, можно подсчитать md5 сумму и создать текстовый файл в Linux с результатом выполнения.
Это рождает ещё несколько способов создания файла в Linux, например, выведем строку в файл с помощью команды echo:
echo «Это строка» > файл.txt
Этот способ часто используется для создания конфигурационных файлов в Linux, так сказать, на лету. Но заметьте, что sudo здесь работать не будет. С правами суперпользователя выполниться echo, а запись файла уже будет выполнять оболочка с правами пользователя, и вы всё равно получите ошибку Access Denied.
Ещё тем же способом можно сделать примитивный текстовый редактор для создания файла. Утилита cat без параметров принимает стандартный ввод, используем это:
После выполнения команды можете вводить любые символы, которые нужно записать в файл, для сохранения нажмите Ctrl+D.
А ещё есть утилита printf, и здесь она тоже поддерживает форматирование вывода:
printf «Это %d текстовая строка\n» 1 > файл
Этот способ создать файл в Linux используется довольно часто.
4. Оператор перенаправления вывода >>
Также можно не только перезаписывать файл, а дописывать в него данные, с помощью перенаправления оператора >>. Если файла не существует, будет создан новый, а если существует, то строка запишется в конец.
echo «Это текстовая строка» > файл.txt
$ echo «Это вторая текстовая строка» >> файл.txt
5. Оператор перенаправления 2>
Первые два оператора перенаправления вывода команды в файл использовали стандартный вывод. Но можно создать файл в терминале Ubuntu и перенаправить в него вывод ошибок:
Если команда не выдает ошибок, файл будет пустым.
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, просто наберите:
Можно создать несколько пустых файлов сразу:
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:
9. Утилита dd
Это утилита для копирования данных из одного файла в другой. Иногда необходимо создать файл определённого размера в Linux, тогда можно просто создать его на основе /dev/zero или /dev/random, вот так:
dd if=/dev/zero of=
Параметр if указывает, откуда брать данные, а of — куда записывать, count — необходимый размер. Ещё можно указать размер блока для записи с помощью bs, чем больше размер блока, тем быстрее будет выполняться копирование.
Создание специальных файлов в Linux
В Linux, кроме выше рассмотренных обычных текстовых и бинарных файлов, существуют ещё и специальные файлы. Это файлы сокетов и туннелей. Их нельзя создать обычными программами, но для этого существуют специальные утилиты, смотрите подробнее в статье, ссылку на которую я дал вверху.
Выводы
Это были все возможные команды для создания файла в Linux. Если вы знаете другие, которые следовало бы добавить в статью — поделитесь в комментариях.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Как быстро создать пустой и непустой текстовый файл в Linux через терминал?
Как быстро создать пустой и непустой текстовый файл в Linux через терминал?
Ответ общий, вы можете исправить его, если считаете нужным.
Существует N-ое количество способов создания текстовых файлов, мы приведём два основных, которые, на наш взляд, самые быстрые с точки зрения клавиатурного ввода, и несколько других.
Под фразой «при вводе» подразумевается, что нужно ввести команду в терминал и нажать клавишу Enter .
Создание пустых файлов
При вводе этой команды в текущей директории будет создан пустой файл с именем a .
Можно вводить без пробела:
Более читаемый вариант, помогает не ошибиться и не записать случайно результат предыдущей команды в файл:
Можно создать сразу сколь угодно файлов:
Хотя так удобней (о touch будет далее):
Создание файлов с текстом
При вводе этой команды в текущей директории будет создан файл с именем h , содержащий текст blablabla и один перевод строки.
Можно вводить без пробела вокруг оператора > :
Выводимый контекст можно заключить в кавычки, а можно и не заключать, даже если он содержит пробелы:
Все три вышеперечисленные команды дают одинаковый результат (кроме имён файлов, естественно).
Также можно провернуть такую штуку:
При вводе этой команды в текущей директории будут созданы два пустых файла: m и n ; и файл o , содержащий текст 123 и один перевод строки.
Иными словами, результат всех команд, которые что-нибудь выводят, можно запихнуть в файл .
Ман по man ‘у . При вводе этой команды в текущей директории будет создан файл с именем p , содержащий мануал по команде man .
Календарик на 2000 год .
Другие способы создания файлов
Создание пустого файла с помощью touch
При вводе этой команды в текущей директории будет создан пустой файл с именем q .
Если быть точным, то touch это команда, основное назначение которой изменить время последнего изменения или последнего доступа файла, если же файл не существует, то она создает его. Цитата.
Создание файла «с текстом» с помощью cat
При вводе этой команды в текущей директории будет создан пустой файл с именем r и терминал перейдёт в режим конкатенации вводимых строк к концу содержимого этого файла. То есть мы можем сразу же начать заполнять файл текстом. Сохранение набранного текста будет происходит построчно по нажатию клавиши Enter . Иными словами, по нажатию клавиши Enter будет выполняться конкатенация.
Можно вводить без пробела:
Пример
- Вводим cat>s — в текущей директории создан пустой файл с именем s .
- Набираем 123 — этого текста ещё не будет в файле.
- Нажимаем Enter — текст 123 записался в файл и курсор, как в терминале, так и в файле, перешёл на новую строку.
На строку выше вернуться нельзя.
Выйти из режима конкатенации можно с помощью Ctrl+D (EOF — End Of File) в начале строки. Если вы уже начали набирать строку, Ctrl+D не закончит ввод файла, но запишет набранную часть строки без символа конца строки. Так вы можете записывать строки частями. Для выхода с незавершённой строкой можно нажать Ctrl+D дважды, тогда последняя строка в файле не будет иметь символа конца строки (EOL — End Of Line).
Создание файла с помощью редактора.
Очевидно, что мы можем исользовать редактор типа nano , vi , vim , etc для создания файла.
Пример
- Вводим nano t — открывается редактор nano в терминальном режиме.
- Вводим 123 и нажимаем Ctrl + O (не ноль, а буква), а затем Enter — в текущей директории создался файл с именем t , содержащий текст 123 и один перевод строки.
- Чтобы выйти и редактора нажимаем Ctrl + X (внизу редактора подсказки).
Создание файла с данными через dd
Полезно иногда создавать файл определенного размера с нулями
или случайными байтами
Создается файл из 100 блоков по 10 мегабайт — 1 ГБ.
Выделение места под файл средствами файловой системы
Такие команды работают быстерее dd потому как сами данные не записываются, а просто выделяется область диска
fallocate резервирует место под файл на диске, а truncate обрезает файл или добавляет до нужного размера, резервируя место на диске.
При создании файлов таким образом в них могут содержаться куски удаленных рание файлов на некоторых системах.