0

在由 SLURM 管理的集群上,我想检查当前用户(和集群)的队列。通常,我必须使用以下命令:

squeue --user=username --clusters=clustername

除了这是一个经常使用的相当长的命令这一事实之外,问题在于它需要用户名。我创建了一个脚本,在某些时候我想检查用户的队列,但我必须先获取用户名。

对于所有这些,我都有一个解决方法,但如果我可以使用类似于 LoadLeveller 的相应命令,那就太好了:

llu

有这样的吗?或者我可以以某种方式在--user标志中指定“当前用户”吗?

4

2 回答 2

2

您可以在/etc/bashrc文件中使用别名(或某些用户使用~/.bashrc ):

alias llu="squeue --user=$USER --clusters=clustername"

编辑

你也可以使用这个不依赖于环境变量的别名:

alias llu="squeue --user=`whoami` --clusters=clustername" 

或者

alias llu="squeue --user=`logname` --clusters=clustername" 
于 2016-02-02T23:02:30.097 回答
2

您可以简单地使用squeue -u $LOGNAME. 如果要查询当前集群上的作业,它应该是默认行为,而无需添加--clusters参数,因此这样 squeue 命令变得更简单。

根据这个答案https://unix.stackexchange.com/a/76369, $LOGNAME 应该总是在环境中定义,所以这应该是完全可移植的。

于 2016-02-03T10:19:19.137 回答