要设定特定的循环列表,可以由文件导入,也可以由{}
导入。
比如要统计每个BAM文件里的reads数目,用for
循环可以如下:
for i in H3K4me1_{0,1,4,12}hour.bam;do echo $i; samtools view -c $i ;done
对从文件中提取:
for i in ${cat file.txt};do echo $i;done
对等差数列:
#有很多种用法
for i in {1..5};do echo $i;done
for i in {1..5..2};do echo $i;done #等差
for i in $(seq 1 5);do echo $i;done
for i in $(seq 1 2 5);do echo $i;done
对从目录提取:
for i in `ls /`;do echo $i;done
通过脚本传参。参考:
echo "argument number are $#"
echo "the input is "
for argument in "$*";
do
echo "$argument "
done
bash temp.sh 2 hellp good fine
输出:
argument number are 4
the input is
2 hellp good fine