2023-11-14 13:19:18 +03:00
#!/usr/bin/expect
# expect used tcl syntax which is very indetaion and spaces sensitive keep that in mind
# Set timeout
2023-11-14 20:56:27 +03:00
set timeout 300
2023-11-14 13:19:18 +03:00
# Start your process
spawn /opt/lrgex/kiauh/kiauh.sh
# Initialize a variable to control the menu interaction
set menu 1
# Single expect block with multiple patterns
expect {
"*Main Menu*" {
# using condition here to make a break for the loop created by exp_continue as i need to use the pattern 2 times one for pressing 1 and one for pressing q
if {$menu} {
send "1\r"
2023-11-14 20:20:02 +03:00
sleep 3
2023-11-14 13:19:18 +03:00
exp_continue
} else {
send "q\r"
2023-11-14 20:20:02 +03:00
sleep 3
2023-11-14 13:19:18 +03:00
exp_continue
}
}
"*Installation Menu*" {
if {$menu} {
send "4\r"
2023-11-14 20:20:02 +03:00
sleep 3
2023-11-14 13:19:18 +03:00
exp_continue
} else {
send "b\r"
2023-11-14 20:20:02 +03:00
sleep 3
2023-11-14 13:19:18 +03:00
exp_continue
}
}
"*Download the recommended macros? (Y/n)*" {
send "y\r"
2023-11-14 20:20:02 +03:00
sleep 3
2023-11-14 13:19:18 +03:00
set menu 0
exp_continue
}
timeout {
puts "Operation timed out"
exit 1
}
}