Menu
Coddy logo textTech

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

Часть раздела Основы путешествия по 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Проверьте себя

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

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