Перенаправить вывод сценария 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.