首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在bcftools中使用for循环

在bcftools中使用for循环
EN

Stack Overflow用户
提问于 2019-12-03 15:18:24
回答 1查看 313关注 0票数 1

我有一个文件夹,其中有900个文件名如下:

代码语言:javascript
复制
chr1_643632542_63643636.vcf.gz
chr1_23634521_626356.vcf.gz
chr2_363643262346_234324.vcf.gz
chr2_1345_21346.vcf.gz
....
chr22_134545_3245145.vcf.gz 

我试图用循环索引每个文件:

代码语言:javascript
复制
for i in {1..22}
do 
  bcftools index -t -f chr${i}_*_*.vcf.gz 
done 

因此,我的结论是:

代码语言:javascript
复制
chr1_643632542_63643636.vcf.gz
chr1_643632542_63643636.vcf.gz.tbi
chr1_23634521_626356.vcf.gz
chr1_23634521_626356.vcf.gz.tbi
chr2_363643262346_234324.vcf.gz
chr2_363643262346_234324.vcf.gz.tbi
chr2_1345_21346.vcf.gz
chr2_1345_21346.vcf.gz.tbi
....
chr22_134545_3245145.vcf.gz 
chr22_134545_3245145.vcf.gz.tbi

但是,当我运行上述循环时,我只获得第一个染色体条目的索引文件,其余部分被忽略(即一个chr1____.vcf.gz.tbi文件只被索引,其余部分被忽略,然后是第一个chr2文件和第一个chr3文件等等)。

我会很感激你的帮助。

万事如意

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-04 11:20:01

也许可以直接遍历文件名:

代码语言:javascript
复制
for i in chr*.vcf.gz
do 
  bcftools index -t -f $i 
done 
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59160212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档