Для перенаправления вывода команды в файл используется запись вида >имя_файла или >>имя_файла
. Например:
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
.