Курс языка программирования Raku / Объекты, ввод-вывод и исключения / Ввод и вывод / Стандартные потоки / Exercises
Вывод и ошибки
Задача
Программа складывает в цикле список чисел 3, 5, 7. На
каждом шаге отправляйте текущую накопленную сумму в стандартный поток
ошибок как сообщение о ходе работы, а после цикла отправьте итоговый
результат в стандартный вывод, обращаясь к дескрипторам потоков
напрямую.
Это разделение важно: результат можно перехватить или передать дальше по конвейеру, а сообщения о ходе работы не будут мешаться, оставаясь в потоке ошибок.
Пример
При запуске программы на экране видны оба потока — сначала накопленные суммы, затем итог:
running total: 3
running total: 8
running total: 15
15Но если отбросить стандартный поток ошибок, останется только настоящий результат:
$ raku output-and-error.raku 2>/dev/null
15