У меня есть два файла, 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"
Спасибо
Ответ таков: добавьте этот код в 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"
Спасибо, я решил это
Других решений пока нет …