我正在尝试打开终端并使用matlab运行脚本。该脚本将打开一个ssh连接。 matlab命令是:
system(['lxterminal -e "bash ' scriptName '" &'],'-echo');
当我执行matlab命令时,脚本会运行但无法验证SSL凭据。
该脚本通过python paramiko包运行ssh。 错误来自cli.py模块。
如果我运行
,问题就解决了system(['lxterminal -e "sudo bash ' scriptName '" &'],'-echo');
但是每次执行脚本时都必须输入用户密码。
如果我打开lxterminal并运行相同的命令:
bash scriptName
没有sudo就行。
我认为它与某些环境变量/配置有关,这些变量/配置在运行脚本之前未在lxterminal中加载,但无法弄清楚。
使用xterm而不是lxterminal具有相同的行为。
有什么想法吗?
答案 0 :(得分:0)
修复,可能是脏的,是在使用matlab脚本中的以下命令调用系统命令之前从matlab环境变量清空LD_LIBRARY_PATH
setenv('LD_LIBRARY_PATH');
与python需求相比,matlab LD_LIBRARY_PATH路径可能正在使用过时的库。 一种更好的方法可能是逐个开始删除路径,直到找到导致问题的路径。