Автоматические ответы в скрипте bash

Хочу написать скрипт для авто снятии наград на ноде

Команда:

bitsongcli tx distribution withdraw-all-rewards --from Treasure --gas auto --gas-adjustment 1.5 --gas-prices 0.025ubtsg

после нужно ответить: y (подтверждение выполнения)

после нужно ввести пароль: newpassword (после чего команда выполняется)

помогите как это сделать в скрипте?

#!/bin/bash 
echo "Сняли награду" 
bitsongcli tx distribution withdraw-all-rewards --from Treasure  --gas auto --gas-adjustment 1.5 --gas-prices 0.025ubtsg

Ответы (2 шт):

Автор решения: Oxyd

bitsongcli tx distribution withdraw-all-rewards --from Treasure --gas auto --gas-adjustment 1.5 --gas-prices 0.025ubtsg < input.txt

input.txt:

y password

Может поможет?

→ Ссылка
Автор решения: PotroNik

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

#!/bin/bash
echo "Сняли награду" 
expect -c 'bitsongcli tx distribution withdraw-all-rewards --from Treasure  --gas auto --gas-adjustment 1.5 --gas-prices 0.025ubtsg;
#>>после нужно ответить: y (подтверждение выполнения)
#<<Ввести в кавычках текст приветствия 
    expect "text" {send -- "y\r\"};
#>>после нужно ввести пароль: newpassword (после чего команда выполняется)
#<<Приглашение ввода пароля указать вместо password:
    expect "password:" {send -- "newpassword\r"};
    interact'

В случае если команда expect не зарегистрирована в системе, нужно будет установить пакет

Ubuntu:apt-get install expect
CentOS:yum install expect

→ Ссылка