Перенаправление вывода команды в файл
Для перенаправления вывода команды в файл используется запись вида >имя_файла или >>имя_файла
. Например:
echo "Однажды, в студёную зимнюю пору" >poetry.txt
echo "Я из лесу вышел, был сильный мороз." >>poetry.txt
Первая команда создаст в текущем каталоге файл с названием poetry.txt (либо, если файл с таким названием уже существует, удалит его и создаст новый файл с таким названием) и запишет в этот файл строку текста, являющуюся первой строкой стихотворения.
Вторая команда, если файл с названием poetry.txt не существует, создаст такой файл, а если файл существует, то откроет его для записи, и запишет в его конец вторую строку стихотворения.
Посмотреть содержимое файла можно командой
cat poetry.txt
Чтобы вывести в файл сообщения об ошибках, используется запись вида 2>имя_файла
и 2>>имя_файла
соответственно, где 2 - это номер стандартного потока ошибок stderr.
Таким образом, вывод программы можно, например, перенаправить в один файл, а сообщения
об ошибках - в другой файл. Например:
(find /etc | grep local) >tmp.out 2>tmp.err
И наоборот - для того, чтобы вывод из обоих потоков перенаправить в один файл используется запись вида &>имя_файла
или &>>имя_файла
.
Чтобы указать в качестве имени файла один из этих потоков, используется запись вида 1>&2
или 2>&1
.
- Стандартные поток ввода (stdin) и стандартные потоки вывода (stdout) и ошибок (stderr).
- Код завершения выполнения программы.
- Перенаправление вывода команды в файл.
- Перенаправление ввода команды из файла.
- Перенаправление вывода команды на ввод другой команды.
- Перенаправление вывода в никуда.
- Именованные каналы.
- Перенаправление вывода в несколько файлов.
- Перенаправление вывода на другой терминал.
- Вывод содержимого файла.
- Ввод из командной строки в файл.
- Выполнение команд из файла.
- Вывод управляющих символов и символов по кодам.
- Запуск сессии shell с перенаправлением стандартных потоков.
- Замена символов при выводе.
- Построчное объединение файлов.
- Перенос строки в терминале.