Перенаправить вывод сценария bash Whatsapp в файл в интерактивном режиме для целей автоматизации

Yowsup-cli - это библиотека, которая позволяет отправлять сообщения пользователям WhatsApp после проверки подлинности. Командой

yowsup-cli -a --interactive <PHONE_NUMBER_HERE> --wait --autoack --keepalive --config yowsup-master/src/yowsup-cli.config

Я могу в интерактивном режиме отправлять или получать сообщения. После выполнения команды вы получите приглашение типа

MY_PHONE_NUMBER@s.whatsapp.net [27-12-2014 18:33]:THIS IS MY MESSAGE,TYPED ON MY PHONE. OPEN DOOR GARAGE Enter Message or command: (/available, /lastseen, /unavailable) Я полностью новичок, но я бы хотел перенаправить этот контент, который печатается на терминале, в файл, чтобы потом проанализировать его или написать скрипт для поиска по этому ключевому слову файла как "OPEN GARAGE DOOR", чтобы я мог автоматизировать что-то. Этот файл, очевидно, должен синхронизироваться с выводом программы, но я не знаю, как это сделать.

yowsup-cli -a --interactive <PHONE_NUMBER_HERE> --wait --autoack --keepalive --config yowsup-master/src/yowsup-cli.config > /path/to/my_file не работает

Запуск Ubuntu 12.04. Я знаю, что yowsup - это библиотека Python, но я не знаю этот язык. Я начинаю изучать C, и я хотел бы сделать это в BASH, или, если это невозможно, в C. Спасибо

1 ответ

Решение

Передайте вывод в tee вместо того, чтобы перенаправить его в файл:

yowsup-cli -a --interactive <PHONE_NUMBER_HERE> --wait --autoack --keepalive --config yowsup-master/src/yowsup-cli.config 2>&1 | tee -a /path/to/my_file

Причина: при перенаправлении вы не видите вывод команды, что затрудняет взаимодействие с ней. Передача в команду tee выведет на экран все выходные данные терминала и добавит его в данный файл.

Интересно, что в командной строке (с использованием перенаправления) вы все равно можете печатать вслепую или даже в соответствии с исходным кодом yowsup-cli, который вы читаете в другом терминале с помощью:

tail -f /path/to/my_file

Хвост с опцией -f печатает последние 10 строк файла, а также любой новый выход из команды yowsup-cli.

Другие вопросы по тегам