Я реализовал оболочку, использующую ожидающие / порождающие и отправляющие команды файлам SCP с удаленного сервера, которые автоматически отправляют пароль, когда это необходимо.
Сценарий отлично работает на терминале UNIX.* Тем не менее, я пытался использовать этот скрипт в процессе C ++.Он был вызван системой () или даже функцией popen () без успеха.Возвращается эта ошибка: «ioctl (raw): ошибка ввода-вывода» Кто-то может иметь какие-либо подсказки?
Это мой сценарий:
#!/bin/bash
targetHost=$1
password=$2
sourceFile=$3
destRep=$4
expect -c "
spawn /usr/bin/scp -q $targetHost:$sourceFile $destRep
expect -i $spawn_id {
"*password:*" { send -i $spawn_id $password\r\n; interact }
eof { exit }
}
exit
"