Использование: CentOS 6.2 BASH shell

Мой сценарий что-то вроде

#!/bin/bash
INSTALL_PATH="Enter install path"
CR="\n"
/bin/su root -c "/usr/bin/expect << EOF
spawn name.run
expect $INSTALL_PATH
send $CR
EOF; ... do more stuff..."

Теперь иногда мой файл name.run спрашивает: «Вы хотите удалить?"как я могу отправить это в качестве необязательного аргумента после первой отправки?

1 ответ1

3

Вы можете поместить несколько шаблонов в команду expect

spawn name.run
expect $INSTALL_PATH
send \r
expect {
  {Would you like to uninstall?} {
    send yes\r
    exp_continue 
  }
  eof 
}

Примите к сведению, что вы отправляете «\r» для "ввода".

Кроме того, терминальное слово для here-документа должно появляться само по себе в строке - после него не должно следовать «; more stuff»

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .