Страницы

Поиск по вопросам

пятница, 12 июля 2019 г.

Изменить возврат от сервиса sms.ru при отправке sms ( команда curl )

Сервис sms.ru . При выполнении команды
curl -d "msg=TEXT" https://sms.ru/sms/send\?api_id=MY_ID\&to=PHONE
( где TEXT- текст sms, который отправляется на телефон, MY_ID- ID клиента в сервисе, PHONE - номер телефона, на который отправляется sms ) сервис возвращает при каждой отправке sms в терминал служебную информацию о статусе отправки, балансе клиента и т.п. - каждый раз три строки без перевода последней строки, (вот что получается например после двух смс):
100 201830-1000001 balance=8.13100 201830-1000001 balance=8.13
у меня на удаленном сервере включен бесконечный скрипт, который отслеживает текущее состояние и при наступлении определенных обстоятельств завершает каждый цикл выполнением вышеуказанной команды и я получаю sms с нужным кодом. Меня не устраивает, что ответы копятся, собственно они мне вообще не нужны там. Как сделать так, чтобы команда выполнялась, но мне в терминал ничего не возвращалось, ну или чтобы возврат был подавлен или как-то невидим?


Ответ

Вечер добрый
if [[ ваше условие ]]; then # если нужно сделать невидимым по условию curl -d "msg=TEXT" https://sms.ru/sms/send\?api_id=MY_ID\&to=PHONE &> /dev/null fi
Если речь идет о *nix и bash оболочке (не указано) stderr и stdout будут перенаправлены в "черную дыру" и не будут захламлять терминал.
Небольшое замечание, вы ничего не "захламляете" если пишите в stdout, вот если пишите в файл то да - используете какое то физическое-виртуальное пространство вашего удаленного сервера
Встречный вопросы:
скрипт написан на чем? bash/perl/python... знакомы ли вы с: /dev/null, >, <, 2 > /dev/null, & > /dev/null

Комментариев нет:

Отправить комментарий