如何在 SLURM 中查看当前用户的队列
How to see the current user's queue in SLURM
在 SLURM 管理的集群上,我想检查当前用户(和集群)的队列。通常,我必须使用这个命令:
squeue --user=username --clusters=clustername
问题在于,除了这是一个经常使用的相当长的命令之外,它还需要用户名。我创建了一个脚本,有时我想在其中检查用户队列,但我必须先获取用户名。
我有一个解决所有这些问题的方法,但如果我可以使用类似 LoadLeveller 相应命令的命令,那就太好了:
llu
有这样的吗?或者我能以某种方式在 --user
标志中指定 "current user" 吗?
您可以在 /etc/bashrc 文件中使用别名(或 ~/.bashrc 对某些用户):
alias llu="squeue --user=$USER --clusters=clustername"
编辑
您也可以使用这个不依赖于环境变量的别名:
alias llu="squeue --user=`whoami` --clusters=clustername"
或
alias llu="squeue --user=`logname` --clusters=clustername"
您可以简单地使用 squeue -u $LOGNAME
。如果你想查询当前集群上的作业,这应该是默认行为,无需添加 --clusters
参数,这样 squeue 命令就变得更简单了。
根据这个答案https://unix.stackexchange.com/a/76369,$LOGNAME 应该总是在环境中定义,所以这应该是完全可移植的。
在 SLURM 管理的集群上,我想检查当前用户(和集群)的队列。通常,我必须使用这个命令:
squeue --user=username --clusters=clustername
问题在于,除了这是一个经常使用的相当长的命令之外,它还需要用户名。我创建了一个脚本,有时我想在其中检查用户队列,但我必须先获取用户名。
我有一个解决所有这些问题的方法,但如果我可以使用类似 LoadLeveller 相应命令的命令,那就太好了:
llu
有这样的吗?或者我能以某种方式在 --user
标志中指定 "current user" 吗?
您可以在 /etc/bashrc 文件中使用别名(或 ~/.bashrc 对某些用户):
alias llu="squeue --user=$USER --clusters=clustername"
编辑
您也可以使用这个不依赖于环境变量的别名:
alias llu="squeue --user=`whoami` --clusters=clustername"
或
alias llu="squeue --user=`logname` --clusters=clustername"
您可以简单地使用 squeue -u $LOGNAME
。如果你想查询当前集群上的作业,这应该是默认行为,无需添加 --clusters
参数,这样 squeue 命令就变得更简单了。
根据这个答案https://unix.stackexchange.com/a/76369,$LOGNAME 应该总是在环境中定义,所以这应该是完全可移植的。