我想编写一个bash脚本来对文件进行成对计算。

我在目录中有一个固定文件,并且想要使用它们进行成对比较的一系列文件。

例如:

固定文件的名称为:Genome.vcf
成对计算的文件名全部在一个目录中:ind_GER,ind_ENG,ind_MRO

我想出了以下脚本:

#!/bin/bash

for pop1 in $(find ind_*)
do
for pop2 in $(find ind_*)
do

 vcftools --gzvcf PATH/Genome.vcf --weir-fst-pop $pop1 --weir-fst-pop $pop2 --out $pop1_$pop2_fst

done
done

我得到的错误是:
Error: Requested Missing Argument

显然,我错了,如果您能提供帮助,我将非常感谢。

最佳答案

更改此:

--out $pop1_$pop2_fst

为了:
--out ${pop1}_${pop2}_fst
_是变量名中的有效字符。

关于Bash脚本进行成对比较,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24288838/

10-14 05:53