我正在尝试运行以下格式的命令:
ssh -t -o StrictHostKeyChecking=no lxplus0035 "source ~/analysis/analysis/util/setup_analysis.sh nonInteractive; time run_analysis configuration1.txt configuration2.txt"
源脚本setup_analysis.sh
设置包含环境变量的复杂环境。它本身就是一个脚本来完成其中的一些工作。在采购run_analysis
之后,环境应该知道可执行文件setup_analysis.sh
。
如果我在本地shell中执行此操作,它可以正常工作并且可执行文件启动时没有问题。如果我通过上面显示的SSH命令执行此操作,则源代码似乎正常工作(我在源脚本中执行which run_analysis
,这将打印正确的可执行文件及其路径),但是在源代码之后,可执行文件不能找到并运行。
为什么远程shell的行为不同?如何保留远程shell以保留源脚本设置的环境?