
매개변수를 사용하여 일부 실행 파일을 여러 번 실행하려고 합니다. 나는 그것을 위해 대본을 썼다. 하지만 항상 오류가 발생하며 이를 해결하는 방법을 알 수 없습니다.
#!/bin/bash
export VCF_FILE='KI_subsetted.recode.vcf'
for i in $(seq 22) do; /home/lab/Desktop/vcftools_0.1.13/bin/vcftools --vcf $VCF_FILE --chr i --out ./by_chrs_komi/i --recode; done
내가 얻는 오류는 다음과 같습니다.
./chrs.sh: line 3: syntax error near unexpected token `/home/lab/Desktop/vcftools_0.1.13/bin/vcftools'
./chrs.sh: line 3: `for i in $(seq 22) do; /home/lab/Desktop/vcftools_0.1.13/bin/vcftools --vcf ./KI_subsetted.recode.vcf --chr i --out ./by_chrs_komi/i --recode; done'
나는 우분투 15.10을 사용하고 있습니다
답변1
노력하다
for i in $(seq 22) ; do /home/aydar/Desktop/vcftools_0.1.13/bin/vcftools --vcf $VCF_FILE --chr $i --out ./by_chrs_komi/$i --recode; done
- 세미콜론(
;)
do 앞에 $i
숫자인 경우 따옴표가 필요하지 않습니다.
또는 프로그래밍 스타일 및 제안에 따라
for i in {1..22}
do
/home/aydar/Desktop/vcftools_0.1.13/bin/vcftools \
--vcf $VCF_FILE --chr $i --out ./by_chrs_komi/$i --recode
done