Вы делаете какую-то CLI программу или скрипт, который(ая) например генерирует
Есть два путя. Первый это прикрутить отправку в чат в сам CLI, чтобы прога сама отправляла куда нужно. Второй это мы не выебываемся и делаем CLI который только генерит отчет, а отправку делаем другим скриптом.
Второй вариант это и есть Unix Way. Основные принципы которого звучат так:
- Делай одно – делай хорошо. Вот этот single responsibility ногами отсюда растет.
- Пиши программы, которые работают вместе. Не нужно делать программу которая делает все, лучше использовать выход одной программы как вход другой
- Работай с текстом. Текстовые потоки – универсальный интерфейс.
В реальности я чаще всего вижу ситуацию, когда пытаются делать один скрипт который делает все. Сам не без греха, и кучу вещей так делал.
С одной стороны это и правда удобнее, ведь сегодня тебе нужно отчет отправлять в чат, а завтра попросят в s3 сохранять. И прикручивать s3 это разбираться с sdk, добавлять зависимости, обрабатывать ошибки и вот это все. При этом просто прикрутить рядом s3cmd это дело 5 минут.
С другой, это может быть не так удобно. Например что если нужно отправлять уже в несколько чатов, тут уже unix way становится сложнее, ведь появится уже bash скрипт который вызывает твою программу, а потом еще каким-то циклом будет вызывать скрипт отправки. Можно было в одном скрипте исправит пару строчек и не пачкаться о bash.
Короче сложно, как всегда однозначного решения нет. Однако последнее время я стараюсь делать скрипты по Unix Way, в большей части кейсов получается в разы проще. Правда держу в голове, что если где-то начинается прикол со сложным bash скриптом, то лучше переписать на скрипт который все делает сам.