Testnet
December 24, 2023

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:'

Version:|Balance:|Block top:

tmux send-keys -t tfsc '6' C-m | tmux capture-pane -p -t tfsc | grep -E 'Version:|Balance:|Block top:'

Balance:

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