2

当我使用 qsub 提交一堆作业时,qsub 将首先获取 .bash_profile。那么我如何才能首先在没有 source .bash_profile 的情况下完成工作。

4

2 回答 2

2

我认为有许多不同的qsub命令与不同的批处理系统相关联。告诉我们您使用的是哪个批处理系统会很有用。

我记得,大多数此类系统都设置了一个或多个环境变量,您可以在.bash_profile. 我使用的系统要么设置$ENVIRONMENT"BATCH",要么设置$PBS_ENVIRONMENT"PBS_BATCH"。(这些可能已过时;请检查您的文档。)

你可以修改你.bash_profile做这样的事情:

if [ "$ENVIRONMENT" != "BATCH" ] ; then
    # existing code here
fi

所以你.bash_profile的仍然是有源的,但如果它在批处理环境中运行,它不会做任何事情。

这很容易修改,所以仍然执行一些命令。

于 2012-03-24T03:25:15.020 回答
0

如果您能弄清楚如何将参数传递给 bash 本身,那么您正在寻找的就是--noprofile. 但我不熟悉 qsub,快速浏览一下手册并没有让我知道如何执行此操作。你能以某种方式指定你的工作在什么外壳下运行吗?

于 2012-03-24T02:50:20.917 回答