При использовании терминала Linux вы можете захотеть сохранить вывод командной строки в текстовый файл для дальнейшего использования, но вы не понимаете, как это сделать. Сохранять выходные данные команд в файл проще, чем вы думаете! Это просто требует небольшого понимания символа перенаправления в Bash. Вот как вы можете выводить команды Linux в файл.
Оглавление
Что за символ перенаправления?
Символ перенаправления (он же оператор перенаправления), в общих чертах, позволяет отправлять входные и выходные данные из одного места в другое.
Перенаправление <означает ввод, а перенаправление> означает вывод. Эти два оператора могут делать множество вещей, и существует множество вариантов использования перенаправления в Linux и Unix-подобных операционных системах в целом. С учетом сказанного, в этой статье мы сосредоточимся только на том, как можно использовать перенаправление для вывода команд Linux в файл.
Вывод команд терминала в файл
Сохранить вывод команды из терминала в текстовый файл очень просто, и он работает за счет использования символа> для отправки результатов.
В терминах Bash при использовании> любой ввод будет перенаправлен в другое место. В нашем случае мы можем взять перенаправление и использовать его, чтобы переместить вывод команды терминала и поместить его в красивый аккуратный текстовый файл для безопасного хранения.
Например, если вы используете Ubuntu и хотите сохранить текущую версию своей операционной системы в файл, вы должны запустить команду lsb_release и добавить в конце символ>.
lsb_release -a > ubuntu_version.txt
Вот и все! Вы успешно вывели команду в текстовый файл. Вот и все! Не стесняйтесь настраивать приведенную выше команду. Просто следуйте синтаксису ниже.
command > filename.fileextension
Добавление в существующий файл
Вы можете захотеть добавить несколько команд в один текстовый файл, а не в один вывод команды.
Чтобы распечатать несколько выходных данных в одном, начните с первой команды и используйте символ> для создания нового файла.
command1 > filename.fileextension
Благодаря символу перенаправления наш вывод сохраняется. Теперь не стесняйтесь добавлять что-то в тот же файл, используя символ >>.
command2 >> filename.fileextension command3 >> filename.fileextension command4 >> filename.fileextension command5 >> filename.fileextension
Выборочное сохранение команд
Отправка вывода команды в файл полезна, особенно когда вам нужно что-то сохранить на потом. Но вы когда-нибудь хотели сохранить определенный фрагмент текста в вашем терминале в файл? Или, возможно, текст с определенными ключевыми словами? Благодаря помощи команды grep это возможно.
Что такое grep? Grep — это инструмент командной строки, который позволяет пользователям Linux (и других Unix-подобных операционных систем) искать указанные шаблоны в строках открытого текста. По сути, это очень полезный инструмент поиска для терминала.
Примеры выборочного сохранения
Возможно, одним из лучших вариантов использования «выборочного сохранения» является сочетание инструмента grep с командой ls для отправки отфильтрованного списка папок / файлов в заданном каталоге в файл для быстрого чтения:
ls ~/directory/ | grep "search term" > ~/Documents/folder-list.txt
Еще одно применение выборочного сохранения — это фильтрация страниц справки по командам. Чтобы сохранить определенный раздел страницы справки команды в текстовый файл, попробуйте приведенный ниже пример.
command --help | grep "search term" > ~/Documents/command-help.txt
Достаточно сказать; есть десятки вариантов использования выборочного сохранения. Вы можете делать с ним что угодно, если вы следуете синтаксису ниже.
command | grep "search term" > file.fileextension
Хотите добавить что-то в свой файл, используйте;
command | grep "search term" >> file.fileextension
Просмотр файлов
Итак, вы сохранили вывод команды терминала в файл. Теперь вам нужно его просмотреть — но как? Что ж, в терминале Linux есть несколько способов просмотра текстовых файлов.
Один из основных способов просмотра содержимого файлов в терминале — это cat. Это простая утилита, которая считывает содержимое файлов и выводит его на экран. Лучше всего то, что инструмент cat работает со всеми типами файлов, поэтому независимо от того, с каким расширением файла сохранен ваш вывод, он его прочитает.
Чтобы просмотреть файл, запустите терминал и напишите cat, а затем укажите местоположение. Например:
cat ~/location/of/command-output.txt
Если результат длинный, подумайте о том, чтобы добавить еще в конце. Это позволит вам медленно просматривать файл, нажимая клавишу пробела или Enter на клавиатуре.
Вам нужно отредактировать текст вывода вашей команды? Попробуйте вместо этого открыть его в текстовом редакторе! В Linux существует множество текстовых редакторов, но для простого редактирования проще всего использовать Nano.
Примечание: не все дистрибутивы Linux поставляются с Nano, поэтому вам может потребоваться сначала установить его, прежде чем вводить команду ниже.
nano -w ~/location/of/command-output.txt