Linux сохранить файл терминал

How do I save terminal output to a file?

How do I save the output of a command to a file? Is there a way without using any software? I would like to know how.

10 Answers 10

Yes it is possible, just redirect the output (AKA stdout ) to a file:

Or if you want to append data:

If you want stderr as well use this:

if you want to have both stderr and output displayed on the console and in a file use this:

SomeCommand 2>&1 | tee SomeFile.txt 

(If you want the output only, drop the 2 above)

Note that someCommand 2> someFile.txt and someCommand 2>> someFile.txt also redirects stterr to someFile.txt

I’m trying to do this with gcc command but it doesn’t work. It works with other commands, but not this one. It simply creates the output file with nothing inside it.

@Nik-Lz Often this is because the command is sending all its output on stderr. If gcc is generating error messages, this seems likely. See Slothworks comment for how to capture stderr instead of stdout.

NB: to get the output of the make command into a file it requires this syntax instead: make > someFile.txt 2>&1 (source: linuxquestions.org/questions/linux-newbie-8/…)

To write the output of a command to a file, there are basically 10 commonly used ways.

Overview:

Please note that the n.e. in the syntax column means «not existing».
There is a way, but it’s too complicated to fit into the column. You can find a helpful link in the List section about it.

 || visible in terminal || visible in file || existing Syntax || StdOut | StdErr || StdOut | StdErr || file ==========++==========+==========++==========+==========++=========== > || no | yes || yes | no || overwrite >> || no | yes || yes | no || append || | || | || 2> || yes | no || no | yes || overwrite 2>> || yes | no || no | yes || append || | || | || &> || no | no || yes | yes || overwrite &>> || no | no || yes | yes || append || | || | || | tee || yes | yes || yes | no || overwrite | tee -a || yes | yes || yes | no || append || | || | || n.e. (*) || yes | yes || no | yes || overwrite n.e. (*) || yes | yes || no | yes || append || | || | || |& tee || yes | yes || yes | yes || overwrite |& tee -a || yes | yes || yes | yes || append 

List:

  • command > output.txt The standard output stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, it gets overwritten.
  • command >> output.txt The standard output stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, the new data will get appended to the end of the file.
  • command 2> output.txt The standard error stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, it gets overwritten.
  • command 2>> output.txt The standard error stream will be redirected to the file only, it will not be visible in the terminal. If the file already exists, the new data will get appended to the end of the file.
  • command &> output.txt Both the standard output and standard error stream will be redirected to the file only, nothing will be visible in the terminal. If the file already exists, it gets overwritten.
  • command &>> output.txt Both the standard output and standard error stream will be redirected to the file only, nothing will be visible in the terminal. If the file already exists, the new data will get appended to the end of the file..
  • command | tee output.txt The standard output stream will be copied to the file, it will still be visible in the terminal. If the file already exists, it gets overwritten.
  • command | tee -a output.txt The standard output stream will be copied to the file, it will still be visible in the terminal. If the file already exists, the new data will get appended to the end of the file.
  • (*) Bash has no shorthand syntax that allows piping only StdErr to a second command, which would be needed here in combination with tee again to complete the table. If you really need something like that, please look at «How to pipe stderr, and not stdout?» on Stack Overflow for some ways how this can be done e.g. by swapping streams or using process substitution.
  • command |& tee output.txt Both the standard output and standard error streams will be copied to the file while still being visible in the terminal. If the file already exists, it gets overwritten.
  • command |& tee -a output.txt Both the standard output and standard error streams will be copied to the file while still being visible in the terminal. If the file already exists, the new data will get appended to the end of the file.
Читайте также:  Пошаговая установка кали линукс

Источник

Редактор Nano, как пользоваться

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

Открыл для себя удобный консольный редактор Micro, с поддержкой мышки, рекомендую попробовать.

Установка редактора Nano

Если Nano у вас не установлен, установить его можно командой:

sudo apt update
sudo apt install nano

Команда выше подходит для операционных систем Debian/Ubuntu.

Создание и открытие файлов

‎Чтобы открыть существующий файл или создать новый, в командной строке наберите nano и название файла:

Сразу откроется окно редактора:

Окно редактора Nano

В нижней части окна располагается список основных команд и вызывающих их сочетаний клавиш ( все управление в nano выполняется с клавиатуры с использованием горячих клавиш).

В сокращениях символ ^ означает клавишу Ctrl. Например, для получение справки нужно выполнить ^G, это означает сочетание клавиш Ctrl+G.

Файл только для чтения

Если вам нужно открыть файл только для чтения используется ключ -v:

Резервная копия файла

Так же можно сделать чтобы при изменения файла создавалась его резервная копия. Для этого используется ключ -B:

После сохранения файла будет создана резервная копия файла с содержимым, которое было до изменения. Имя резервной копии соответствует имени исходного файла со значком тильды ~ на конце.

Редактирование файлов

Сразу после открытия редактора вы можете приступить к редактированию файла (в отличии, например, от редактора vim).

Поиск и замена текста

Чтобы найти какой либо текст внутри файла используйте сочетание клавиш Ctrl+W, далее введите строку поиска и нажмите Enter. Курсов переместиться на первое вхождение (относительно курсора) искомого текста, чтобы проложить поиск, нажмите сочетание клавиш Alt+W и курсор переместиться к следующему вхождению.

Читайте также:  How to check port opened in linux

Чтобы найти и заменить какой-либо текст внутри файла, вам потребуется сочетание клавиш Ctrl+\. После его нажатия появится запрос на ввод текста который нужно найти и заменить, введите его и нажмите Enter. Далее нужно ввести текст на который выходите заменить, введите его и нажмите Enter.

Далее режим работы такой, при нажатии клавиши:

A — будет произведена замена всех вхождений искомого текста.

Y — заменить текст около курсора.

N — пропустить и не менять текст около курсора.

Вырезание, копирование и вставка текста

Если вам нужно вырезать и вставить целую строку, то переместите курсор на эту строку и нажмите сочетание клавиш Ctrl+K. Затем, чтобы вставить вырезанную строку из буфера, нажмите Ctrl+U.

Для копирования и вставки произвольного текста вам нужно сначала выделить его. Чтобы это сделать поместите курсор на начало текста, который планируется копировать, и нажмите сочетание клавиш Ctrl+6, затем перемещайте курсор клавишами влево вправо, чтобы выделить нужный фрагмент. Далее чтобы скопировать текст нажмите Alt+6 или вырезать Ctrl+K. Чтобы вставить используйте уже знакомое сочетание Ctrl+U.

Если вы работаете с Nano в Ubuntu через Windows Subsystem for Linux (WSL2), то сочетание клавиш Ctrl+6 работать не будет, для выделения текста используйте Alt+Shift+6

Или можно нажать Esc+Esc+6

Кстати, двойное нажатие на клавиши Esc можно использовать вместо Ctrl, т.е. Ctrl = Esc Esc

Для вставки текста из другого файла используется клавиша Ins.

Зажатой клавишей Shift и стрелками можно выделять текст.

Как удалить весь текст из файла

Комбинация клавиш Alt + T сотрет все от курсора и до конца файла. Если поставить курсор в начало файла, то сотрется все содержимое.

Сохранение и выход

Если вы просто хотите сохранить изменения и продолжить работу не закрывая редактор, то используйте сочетание клавиш Ctrl+O, далее введите имя файла или оставьте старое и нажмите Enter.

Читайте также:  Unable to write linux

Сохранение файла в редакторе Nano

Если вам нужно сохранить изменения и выйти из редактора, то используйте сочетание клавиш:

Дальше, если вы изменяли файл, то появится вопрос: «Save modified buffer?». Если вы хотите сохранить изменения нажмите клавишу Y, появится вопрос на ввод имени файла. Введите новое имя файла или оставьте старое и нажмите Enter. Если не хотите сохранять изменения, то нажмите клавишу N.

При нажатии Ctrl+C вы вернетесь обратно в редактор.

Список основных горячих клавиш для работы с редактором Nano

Сочетание Что делает
Ctrl+A Переместить курсор в начало строки.
Ctrl+E Переместить курсор в конец строки.
Ctrl+Y Переместить курсор на 1 страницу вверх (аналог PageUp)
Ctrl+V Переместить курсор на 1 страницу вниз (аналог PageDown)
Ctrl+_ Перейти к определенной строке (после нажатия введите номер строки).
Ctrl+C Показать на какой строке и в какой позиции находится курсор.
Ctrl+W Поиск текста в файле (после нажатия введите что искать).
Ctrl+\ Поиск и замена текста в файле (после нажатия введите что найти/заменить, а после на что менять).
Ctrl+D Удалить символ под курсором.
Ctrl+K Удалить текущую строку.
Ctrl+O Сохранить изменения, не закрывая редактор.
Ctrl+X Выход из редактора. Если файл был изменен, появится запрос на сохранение изменений.

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

Категории

Свежие записи

Источник

Как сохранить и выйти из nano в терминале

Nano — это редактор на основе командной строки, известный своей простотой по сравнению с другими редакторами, такими как Vim и Emacs. Но если вы новичок в Nano, выполнение основных операций, таких как создание файлов, сохранение файла и выход из редактора, может вызвать у вас недоумение. Поэтому в этой статье я хочу показать вам, как сохранить ваш код в Nano и выйти из него.

Как сохранить файл в Nano

Шаг 1: Откройте терминал, введите «nano» и нажмите ENTER, чтобы попасть в редактор кода Nano

Запуск редактора nano

Шаг 2: Напишите свой код или текст на любом языке. На скриншоте ниже я написал немного PHP.

Текст в редакторе nano

Если у вас не работает подсветка синтаксиса, включите ее, нажав ALT + 4. Если подсветка синтаксиса все еще не появилась, сохраните файл.

Шаг 3: Нажмите CTRL + O, чтобы сохранить файл, введите имя файла и нажмите ENTER.

Сохранение файла в nano

Теперь подсветка синтаксиса включена:

Подсветка синтаксиса в nano

Если вы уже открыли файл, набрав

Когда вы закончите вносить изменения, нажмите CTRL + O и нажмите ENTER, чтобы сохранить изменения.

Как выйти из Nano

Чтобы выйти из nano, достаточно нажать CTRL + X.

Как выйти из Nano

Если у вас есть изменения, которые не были сохранены, вам будет предложено сохранить изменения перед выходом из редактора.

Подведение итогов

Надеюсь, эта статья помогла вам узнать, как сохранить файл в Nano и выйти из редактора, когда захотите.

  • Набрав nano, вы попадаете в редактор Nano в терминале.
  • CTRL + O сохраняет файл в Nano
  • CTRL + X выход из Nano

Похожие записи:

Источник

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