1

我在通过 SSH 运行作业时遇到了一些困难。我有一系列联网的机器,它们都可以访问同一个主文件夹(安装我的可执行文件时)。在一台机器上工作时,我希望能够使用以下命令通过 ssh 运行我的代码:

ssh -q ExecutableDir/MyExecutable InputDir/MyInput

如果我通过 ssh 连接到我希望远程运行该作业的任何机器,只需运行:

ExecutableDir/MyExecutable InputDir/MyInput

它运行无误,但是当我通过 SSH 运行时,我收到一条错误消息,提示找不到某些共享库。有没有人遇到过这种事情?

4

1 回答 1

2

好的,我自己想通了。似乎当您以上面显示的方式通过 ssh 运行事物时,您不会继承路径变量等,如果您在“正确”中进行 ssh-ed 的话。你可以通过运行看到这一点:

ssh RemoteMachine printenv

并将输出与连接到远程计算机时通常得到的输出进行比较。然后我寻求的解决方案是运行以​​下内容:

ssh -q ExecutableDir/MyExecutable source ~/.bash_profile && InputDir/MyInput

然后从远程机器上的 bash_profile 文件中获取您可能需要的所有路径和内容

于 2013-10-07T19:47:31.030 回答