ssh运行命令与在本地运行命令的结果不同



我有一个python脚本,它使用Popen为mac 上的模拟器创建appium服务器

self.appium_process = subprocess.Popen(["/usr/local/bin/appium", "-a", self.ip, "--nodeconfig", self.node_file_path, "--relaxed-security", "-p", str(appium_port), "-dc", default_capabilities], stdout=log_file, stderr=subprocess.STDOUT)

我创建了一个bashshell脚本,它调用python脚本。当我从本地框运行脚本时,它会工作,appium日志会显示连接。但是,我需要通过ssh运行这个远程程序。因此,我使用以下方法来调用脚本:

ssh 10.18.66.99 automation_fw/config/testscript.sh

然而,这总是以日志显示结束:

env: node: No such file or directory

我检查了一下,节点应用程序在调用之前有一个额外的斜杠

$ which node
/usr/local/bin//node
$

我试着改变机器上的路径,但没有改变。我如何让它从ssh运行,就像它在同一个盒子上本地运行一样

当您针对SSH运行命令时,您并没有启动所谓的login shell(此处详细介绍(。

根据您分享的详细信息,我想说这是您的环境中的一些问题(在登录的shell之外运行(,更具体地说是$PATH变量的问题。您可能需要检查/etc/environment或类似路径(取决于您的Linux风格(是否有错误的值。

最新更新