我对Unix有基本的了解。我有一个22个具有此名称模式的文件列表:chr1_ASI,chr2_ASI,chr3_ASI ... chr22_ASI。
我想在OS X终端中使用此Plink命令循环遍历它们:
./plink --file /path/chr1_ASI --chr 1 --make-bed --out /path/chr1_ASI_filtered
然后对于2-22染色体也一样。
我想在Unix中使用for循环简化此脚本。这就是我所拥有的。
for i in {1..22}; do ./plink --file /path/chr${1}_ASI --chr ${i} --make-bed --out /path/chr${i}_ASI_filtered; done
但这不起作用。我可能正在做一些基本的错误。提前谢谢。
编辑:正如有人注意到的,我的错误就是写chr $ {1} _ASI而不是chr $ {i} _ASI。否则脚本运行得很好。
答案 0 :(得分:4)
尝试将/path/chr${1}_ASI
更改为/path/chr${i}_ASI