Файл не загружен и имеет тайм-аут с PHP и использует Expect

У меня есть два файла, script.php (для запуска ожидаемых файлов), script.exp (ожидаемые файлы для получения / загрузки файлов), но у меня есть некоторые проблемы с script.exp, файл которого я хочу скачать не скачал, я почти уверен, что код почти правильный, и теперь я застрял, пожалуйста, помогите, это мой код:

script.php

function downloadreal(){
exec("expect /home/script.exp");}

script.exp

#!/usr/bin/expect
set timeout 10
set pass "password"spawn sftp -oPort=2123 [email protected]
expect "*you sure you want to continue*"send "yes \r"expect {
timeout {puts "Time out!"; exit}
"*password:"}
send "$pass\n"expect "*sftp>"send "ls -l \r"expect "*sftp>"send "get *.csv \r"expect "*sftp>"send "bye \r"expect ""expect "*\r"expect "\r"

Спасибо

0

Решение

Ответ таков: добавьте этот код в script.exp:

expect {
"(yes/no)" { send "yes\r";exp_continue}
"password"}

итоговый код будет таким:

#!/usr/bin/expect
set timeout 10
set pass "password"spawn sftp -oPort=2123 [email protected]
expect {
"(yes/no)" { send "yes\r";exp_continue}
"password"}
send "$pass\n"expect "*sftp>"send "ls -l \r"expect "*sftp>"send "get *.csv \r"expect "*sftp>"send "bye \r"expect ""expect "*\r"expect "\r"

Спасибо, я решил это

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]