如何运行使用范围在一个循环的参数的同样的命令?

问题描述 投票:-1回答:1

我想--CHROM标志后运行使用值此命令从1到22,如:

python eigenMT.py --CHROM 1  --QTL SG.cis.eqtls.txt --GEN SG.genotypes.txt --GENPOS SG.gen.positions.txt --PHEPOS SG.phe.positions.txt --OUT SG_Out.txt

我试图让一个bash脚本看起来像这样:

for i in {1..22}
do
        python eigenMT.py --CHROM $i  --QTL SG.cis.eqtls.txt --GEN SG.genotypes.txt --GENPOS SG.gen.positions.txt --PHEPOS SG.phe.positions.txt --OUT SG_Out.txt
done

但我得到一个空SG_Out.txt文件。

能否请你帮我如何在所有22个值运行这一点,在一个文件中写入输出?

我要指出,如果我运行此一一(无环)它的工作原理。

python bash
1个回答
0
投票

这可能你想要做什么,而无需创建临时文件

for i in {1..22}
do
        python eigenMT.py --CHROM $i  --QTL SG.cis.eqtls.txt --GEN SG.genotypes.txt --GENPOS SG.gen.positions.txt --PHEPOS SG.phe.positions.txt | tail -n +2
done > SG_Out.txt
© www.soinside.com 2019 - 2024. All rights reserved.