slurm 스크립트에서 배경 옵션으로 wget을 실행할 수 없는 이유는 무엇입니까?

slurm 스크립트에서 배경 옵션으로 wget을 실행할 수 없는 이유는 무엇입니까?

이 스크립트를 사용하여 파일을 다운로드합니다. 그렇지 않은 경우 -b파일 wget을 하나씩 다운로드하십시오. 이를 통해 -b백그라운드에서 동시에 파일을 다운로드할 수 있습니다. 불행하게도 이 스크립트는 SLURM에서 작동하지 않습니다. Slurm에서만 작동 하지 -b않았습니다.

파일을 다운로드하는 스크립트

#!/bin/bash

mkdir data
cd data
for i in 11 08 15 26 ;
do
  wget -c -b -q ftp://ftp.sra.ebi.ac.uk/vol1/fastq/SRR116/0${i}/SRR116802${i}/SRR116802${i}_1.fastq.gz 
  wget -c -b -q ftp://ftp.sra.ebi.ac.uk/vol1/fastq/SRR116/0${i}/SRR116802${i}/SRR116802${i}_2.fastq.gz
done

cd ..

진흙 스크립트

#!/bin/bash

#SBATCH --job-name=mytestjob     # create a short name for your job
#SBATCH --nodes=2                # node count
#SBATCH --ntasks=2               # total number of tasks across all nodes
#SBATCH --cpus-per-task=2        # cpu-cores per task (>1 if multi-threaded tasks)
#SBATCH --mem-per-cpu=4G         # memory per cpu-core (4G is default
#SBATCH --time=10:01:00          # total run time limit (HH:MM:SS)
#SBATCH --array=1-2              # job array with index values 1, 2

#Execution

bash download.sh

터미널에서:( sbatch slurmsript.sh쓸모 없는)no jobid

답변1

일련의 작업을 사용하면 파일을 동시에 다운로드할 수 있습니다(각 배열 작업이 다운로드됨). wget을 백그라운드에 넣을 필요가 없습니다. 실제로 내 경험에 따르면 백그라운드에서 프로세스를 시작하여 slurm 스크립트 명령줄을 "해제"하려고 하면 slurm 제출 스크립트의 실행이 완료되었을 때 slurm이 작업을 종료합니다(그러나 작업은 여전히 ​​실행 중일 수 있습니다). 배경). 그래서 이것이 당신이 원하는 전망과 진흙입니다!

관련 정보