sbatch --array 命令中的值与作业任务 ID 不同,每个 运行 在不同的作业中
Values in a sbatch --array command different from the job task IDs, each of them run in a different job
是否可以在 sbatch --array 命令行中为脚本提供一些值不同于作业任务 ID,并且每个值都是 运行一份不同的工作?
sbatch --array=1-2 script.sh 4 6
其中 script.sh 为
#!/bin/bash
VALUE=$"$SLURM_ARRAY_TASK_ID"
echo $VALUE
然后,在他们 运行、
cat slurm*
returns
1
2
但我想知道是否有可能使 2 个作业 return 而不是 sbatch --array 命令中输入的“4 6”值,一个一个:
4
6
您可以使用 indirect variable expansion:
#!/bin/bash
VALUE=${!SLURM_ARRAY_TASK_ID}
echo $VALUE
注意感叹号。之后
sbatch --array=1-2 script.sh 4 6
您应该有两个输出文件,一个带有 4
,一个带有 6
。
是否可以在 sbatch --array 命令行中为脚本提供一些值不同于作业任务 ID,并且每个值都是 运行一份不同的工作?
sbatch --array=1-2 script.sh 4 6
其中 script.sh 为
#!/bin/bash
VALUE=$"$SLURM_ARRAY_TASK_ID"
echo $VALUE
然后,在他们 运行、
cat slurm*
returns
1
2
但我想知道是否有可能使 2 个作业 return 而不是 sbatch --array 命令中输入的“4 6”值,一个一个:
4
6
您可以使用 indirect variable expansion:
#!/bin/bash
VALUE=${!SLURM_ARRAY_TASK_ID}
echo $VALUE
注意感叹号。之后
sbatch --array=1-2 script.sh 4 6
您应该有两个输出文件,一个带有 4
,一个带有 6
。