我使用Python编写了一些命令,并将其运行成bash脚本。这些命令大多是Python脚本。
#!/bin/bash
./xmlchange JOB_WALLCLOCK_TIME=30:00:00
./xmlchange NTASKS=40
./case.setup
cp ../something ./something
./xmlchange something
./case.build
./case.submit
我这样从Python中调用bash脚本:
os.chmod("./run.sh", stat.S_IRWXU )
subprocess.call("./run.sh")
然而,最后一个命令(./case.submit)的行为总是不同。该命令用于将SLURM作业提交到队列中。如果我直接从Python运行此bash脚本,则由于内存问题,作业几乎立即崩溃。
但是,如果我从终端运行最后一个命令,则作业可以正常运行。
因此,我怀疑VS Code会话与默认登录会话的环境是否相同。因为至少“终端”选项卡界面不同,它不会加载.bash_profile文件。
有人有这方面的经验吗?