我尝试多次运行带有参数的可执行文件。我为此编写了一个脚本。但我总是收到错误,不知道如何修复它。
#!/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'
我在 Ubuntu 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