Transformers-testnet использование tmux (ПОЛЕЗНЫЕ ИНСТРУММЕНТЫ)
Что бы не входить в оболочку tmux и не нажимать 6 (запрос бонусов) можно использовать команду
tmux send-keys -t tfsc '6' C-m
Для автоматизации выполнения команд в tmux извне, можно использовать
утилиту tmux вместе с опцией `send-keys`.
Отправить запрос внутри tmux без входа в оболочку, нужно использовать
следующую команду:
tmux send-keys -t tfsc 'ваша_команда_для_выполнения_пункта_6' C-m
tfsc- имя вашей tmux-сессии.ваша_команда_для_выполнения_пункта_6- команда или последовательность команд, которую вы хотите выполнить.C-mв конце представляет собой "Enter" (или "Return") и будет нажато, чтобы выполнить введенные команды. Обратите внимание, что вам нужно будет заменитьваша_команда_для_выполнения_пункта_6на фактическую команду, которую вы хотите выполнить внутри tmux.
Выполнение запроса Get Bonus(6) и вывод всех данных, если Вам не нужно все, удалите лишнее из списка: Version:|Base58:|Balance:|Block top:.
tmux send-keys -t tfsc '6' C-m | tmux capture-pane -p -t tfsc | grep -E 'Version:|Base58:|Balance:|Block top:'
tmux send-keys -t tfsc '6' C-m | tmux capture-pane -p -t tfsc | grep -E 'Version:|Balance:|Block top:'
tmux send-keys -t tfsc '6' C-m | tmux capture-pane -p -t tfsc | grep -E 'Balance:'
Скрипт автовыполнения запросов бонуса (тестирую, в процессе настройки)
#!/bin/bash echo "$(date) - Start of the script" >> log_transformers.txt # Ваш скрипт tmux send-keys -t tfsc '6' C-m sleep 5 tmux send-keys -t tfsc '7' C-m tmux capture-pane -p -t tfsc | grep -E 'Version:|Base58:|Balance:|Block top:' >> log_transformers.txt echo -e "$(date) - Время завершения выполнения скрипта\n\n" >> log_transformers.txt
Разъяснение описанного в скрипте
1. `echo "$(date) - Start of the script" >> log_transformers.txt`: Эта команда добавляет в файл `output.txt` текущую дату и время с помощью команды `date`, после чего следует строка " - Start of the script".
2. `tmux send-keys -t tfsc '6' C-m`: Отправляет в tmux команду `6` с использованием `send-keys` и эмуляции нажатия клавиши Enter (`C-m`).
3. `sleep 5`: Задерживает выполнение следующей команды на 5 секунд. Это, вероятно, нужно для того, чтобы дать программе в tmux завершить выполнение команды `6`.
4. `tmux send-keys -t tfsc '7' C-m`: Отправляет в tmux команду `7` с использованием `send-keys` и эмуляции нажатия клавиши Enter (`C-m`).
5. `tmux capture-pane -p -t tfsc | grep -E 'Version:|Base58:|Balance:|Block top:' >> log_transformers.txt`: Захватывает вывод текущего окна tmux с использованием `capture-pane`, фильтрует строки с помощью `grep`, чтобы оставить только те, которые содержат 'Version:', 'Base58:', 'Balance:', 'Block top:', и добавляет их в файл `output.txt`.
6. `echo -e "\n\n$(date) - End of the script" >> log_transformers.txt`: Добавляет в файл `output.txt` две пустые строки, после чего следует текущая дата и время, а затем строка " - End of the script".
Таким образом, весь этот скрипт отправляет команды в tmux, захватывает и фильтрует вывод, добавляет соответствующие метки времени и записывает все в файл `log_transformers.`.
crontab -e 0 */3 * * * /path/to/your/script.sh * * * * * sleep 10 && /path/to/your/script.sh chmod +x /path/to/your/script.sh