Хай! Использую $expect_out(buffer), что бы получить вывод из запущенной программы! Далее выведенное передаем как аргумент и вызываю save_data.sh При выводе первого expect_out(buffer), отрабатывает корректно! При втором вызове пусто!
Я предполагаю, что это связано с тем что запускается еще один spawn С bash работаю впервые, прошу не ругаться!))
code
#!/usr/bin/expect -f
spawn ./execute_file.sh
set executefileID $spawn_id
expect -re "(.*)Continue\r"
set myout $expect_out(buffer)
spawn ./save_data.sh "$myout"
send -- "done1\r"
expect -re "(.*)Continue\r"
set myout2 $expect_out(buffer)
spawn ./save_data.sh "$myout2"
send -- "done2\r"
expect eof