Menu
CoddyTech

Стандартный ввод

Часть раздела Основы путешествия по Terminal на Coddy. Урок 40 из 82.

Второй поток данных — это стандартный ввод, сокращённо stdin. Если стандартный вывод — это поток, куда команды отправляют результаты, то стандартный ввод — это поток, откуда команды получают данные.

Многие команды могут читать данные из файла, принимая имя файла в качестве аргумента:

cat notes.txt
sort names.txt

Но вы также можете перенаправить содержимое файла непосредственно в команду с помощью оператора <:

sort < names.txt

Это передаёт содержимое names.txt команде sort через стандартный ввод. Результат такой же, как у sort names.txt, но механизм другой: оболочка открывает файл и подключает его к стандартному вводу, вместо того чтобы команда открывала файл по его имени.

Можно объединить перенаправление ввода и вывода в одной команде:

sort < names.txt > sorted_names.txt

Этот код считывает данные из names.txt, сортирует их и записывает результат в sorted_names.txt. Перенаправление ввода особенно полезно при работе с командами, которые ожидают данные из стандартного ввода, а не имя файла в качестве аргумента.

challenge icon

Задание

Легко

Используй перенаправление ввода с оператором <, чтобы отсортировать содержимое файла numbers.txt в числовом порядке.

Выполни одну команду, которая:

  • Перенаправляет содержимое numbers.txt в команду sort с помощью <
  • Использует флаг -n для числовой сортировки

Подсказка: Формат: sort -n < filename. Оболочка открывает файл и подключает его к стандартному вводу команды.

Попробуйте сами

Терминал
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Песочница Terminal