установить значения для переменных задания из другого файла - PullRequest
0 голосов
/ 02 мая 2019

Я хотел указать имя и другие значения некоторых переменных задания из другого файла, но я получил ошибку.sbatch: error: Unable to open file 10:12:35

file.sh

#!/bin/bash
DATE=`date '+%Y-%m-%d %H:%M:%S'`
name='test__'$DATE
sbatch -J $name -o $name'.out' -e $name'.err' job.sh

job.sh

#!/bin/bash
#SBATCH --job-name=test
#SBATCH --nodes=1                # number of nodes
#SBATCH --ntasks-per-node=2      # number of cores
#SBATCH --output=.out
#SBATCH --error=.err

#module load R
Rscript script.R

script.R

for(i in 1:1e6){print(i)}

1 Ответ

1 голос
/ 03 мая 2019

Вы неверно цитируете переменные, и пространство, запрошенное в дате, создает два аргумента для sbatch, поэтому он жалуется на этот неправильный параметр.

Если бы я был вами, я бы избежал пробела (так какобщее правило, потому что оно более подвержено ошибкам и всегда требует цитирования):

file.sh :

#!/bin/bash
DATE=$(date '+%Y-%m-%dT%H:%M:%S')
name="test__$DATE"
sbatch -J "$name" -o "${name}.out" -e "${name}.err" job.sh
...