我想对每一对文件运行一个循环命令
a_xxx.wig
b_xxx.wig
c_xxx.wig
a_xxx.bed
b_xxx.bed
c_xxx.bed
我想根据示例名称(a、b或c)匹配文件,并让循环在每个对中运行一个命令,而不必一次执行一个命令
for file in * do
bedtools intersect -a $sample.wig -b $sample > $sample.bed
done
如有任何意见或建议,将不胜感激。
最佳答案
wig
文件是输入,所以只需遍历它们。您可以提取文件名的一部分作为其他名称的“基础”。
for file in *.wig; do
sample=${file%.wig}
bedtools intersect -a "$sample.wig" -b "$sample" > "$sample.bed"
done