5.7. Файловый ввод–вывод

We use cookies. Read the Privacy and Cookie Policy

5.7. Файловый ввод–вывод

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

Во время перенаправления стандартного потока ошибок следует указывать дескриптор файла (2). Для потоков ввода и вывода делать это не обязательно.

Таблица 5.1. Основные операторы переадресации

команда > файл Направляет стандартный поток вывода в новый файл команда 1> файл Направляет стандартный поток вывода в указанный файл команда >> файл Направляет стандартный поток вывода в указанный файл (режим присоединения) команда > файл 2>&1 Направляет стандартные потоки вывода и ошибок в указанный файл команда 2> файл Направляет стандартный поток ошибок в указанный файл команда 2» файл Направляет стандартный поток ошибок в указанный файл (режим присоединения) команда >> файл 2>&1 Направляет стандартные потоки вывода и ошибок в указанный файл (режим присоединения) команда < файл1 > файл2 Получает входные данные из первого файла и направляет выходные данные во второй файл команда < файл В качестве стандартного входного потока получает данные из указанного файла команда << разделитель Получает данные из стандартного потока ввода до тех пор, пока не встретится разделитель команда <&m В качестве стандартного входного потока получает данные из файла с дескриптором m команда > &m Направляет стандартный поток вывода в файл с дескриптором m