BASH Программирование

Как записать в файл в Bash

Как записать в файл в Bash
Одна из основных задач, которые мы выполняем при работе со сценариями bash, - это чтение и запись файлов. В этом руководстве мы сосредоточимся на том, как читать файлы в bash и как их редактировать.

Есть несколько способов чтения и записи файла в bash. Самый простой способ - использовать операторы «>» и «>>».

Общий формат использования операторов перенаправления:

Данные> Имя файла
Данные >> Имя файла

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

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

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

Сохраните текстовый файл.

Введите в терминале указанную ниже команду:

$ echo «Замена существующего текста в файле»> testfile.текст

Чрезмерное отжимание может быть рискованным; поэтому рекомендуется включать "noclobber". Установка «noclobber» заблокирует любую перезапись в любой существующий файл.

$ set -o noclobber
$ echo «Замена существующего текста в файле»> testfile.текст

Но если вы хотите обойти "noclobber", используйте "> |Оператор "вместо">”:

$ echo «Замена существующего текста в файле»> | тестовый файл.текст

Или вы можете просто отключить «noclobber»:

$ set + o noclobber

Но эта команда снимет защиту со всех файлов.

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

$ echo «Добавление текста в существующий текстовый файл» >> testfile.текст

«эхо»Не всегда идеален для использования, поскольку вы не можете форматировать текст с его помощью, поэтому используйте« printf »вместо« echo »для форматирования текста, как показано в следующей команде:

$ printf «Добро пожаловать \ n Это новый текстовый файл.»> Newtestfile.текст

Давайте разберемся с концепцией на примере сценария bash. Откройте Vim, набрав «vim» в терминале. Если на вашем устройстве нет редактора Vim, установите его, используя:

$ sudo apt install vim

Введите сценарий:

#! / bin / bash
echo «Введите свое имя»
читать имя
эхо $ имя> каталог_данных.текст
echo «Укажите свой возраст»
читать возраст
echo $ age >> data_dir.текст
cat data_dir.текст

Значок «Кот»Команда используется для создания и редактирования файлов. Сохраните приведенный выше сценарий в Vim, переключив режим после нажатия кнопки «EscКлавишу ", а затем введите": w myscript.ш”. Откройте терминал и запустите код:

Как написать файл с помощью Heredoc

Если вы хотите написать несколько строк, то самый простой способ - использовать «Heredoc». Здесь документ, также известный как «Heredoc», представляет собой многоцелевой блок кода. Синтаксис Heredoc:

Командование <<[-] Delimiter
.
текст / команды
.

Разделитель

Вместо «Разделителя» можно использовать любую строку, а «-» также можно использовать для удаления любых пробелов табуляции в файле. Давайте разберемся с этим на простом примере:

#! / bin / bash
Кот << TEXTFILE
Это текстовый файл.
Этот файл создан с использованием heredoc.
ТЕКСТОВЫЙ ФАЙЛ

Приведенная выше команда сценария «cat» создает текстовый файл с именем «TEXTFILE» и записывает текст в только что созданный файл. Теперь сохраните файл с именем «myscript.ш”. Запустить терминал и запустить скрипт.

Как записать файл с помощью команды Tee

Другой способ записать файл - использовать команду «Тройник». Как указывает имя, эта команда принимает ввод и записывает в файл и одновременно показывает вывод. По умолчанию команда «Тройник» перезаписывает существующие данные.

$ echo «Это какой-то текст» | текстовый файл tee.текст

Чтобы добавить, используйте -a:

$ echo «Это еще один текст» | tee -a текстовый файл.текст

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

$ echo «Добавление текста в несколько файлов» | tee textfile1.txt textfile2.txt textfile3.текст

Приведенная выше команда создаст три файла, если они не существуют, и напишет текст в каждый из них.

Заключение

В этом руководстве основное внимание уделяется нескольким подходам к записи в файл в bash с примерами. В сценариях bash существует несколько способов записи файла, но самый простой из них - использовать операторы перенаправления «>», «>>». Для записи нескольких строк можно использовать «heredoc», а если вы хотите записать одни и те же данные в несколько строк, то команда «tee» весьма удобна.

Как разработать игру в Linux
Десять лет назад не многие пользователи Linux могли бы предсказать, что их любимая операционная система однажды станет популярной игровой платформой д...
Порты коммерческих игровых движков с открытым исходным кодом
Бесплатные игры с открытым исходным кодом и кроссплатформенные версии игрового движка можно использовать для игры как в старые, так и в некоторые из с...
Лучшие игры с командной строкой для Linux
Командная строка - не только ваш главный союзник при использовании Linux - она ​​также может быть источником развлечений, потому что вы можете использ...