Matlab R2015a
Здравствуйте,
Чтобы программно подключиться через ssh, я создал сценарий , как описано в
ssh connect и программные команды
#!/usr/bin/expect
set login "any_user"
set addr "some_address"
set pw "any_pwd"
spawn ssh -t $login@$addr
expect "$login@$addr\'s password:"
send "$pw\r"
expect "~" ; # put here string from your server prompt
send "mkdir some_dir\r"
interact
Я вызвал этот скрипт LoginSSH.sh (конечно, со своими собственными данными), затем без проблем запускаю эту команду в консоли Linux:
. / LoginSSH.sh
Идея состояла в том, чтобы запустить эту команду из Matlab с помощью system ():
scmd='./LoginSSH.sh'
[status,cmdout]=system(scmd)
Но по некоторым причинам у Matlab есть некоторые проблемы с выполнением скрипта через system (). Это вывод:
status =
1
cmdout =
OpenSSL version mismatch. Built against 100020af, you have 1000107f
send: spawn id exp4 not open
while executing
"send "$pw\r""
(file "./LoginSSH.sh" line 8)
Я даже могу запустить команду на Python:
import os
from subprocess import call
call(["./LoginSSH.sh"])
снова, без проблем.
В чем может быть причина, по которой Matlab не хочет запускать сценарий оболочки?
Заранее спасибо.
Jleon