我需要运行一个java程序来合并多个扩展名为*bam的文件。该程序的结构如下:
java -jar mergefiles.jar \
I=file1.bam \
I=file2.bam \
I=file3.bam \
O=output.bam因此,我尝试对一个目录中的所有*bam文件运行此程序。最初,我尝试使用*bam文件(filenames.txt)的名称创建一个列表。
file1.bam
file2.bam
file3.bam并使用'while‘命令,例如:
while read -r line; do
java -jar MergeFiles.jar \
I=$line \
O=output.bam
done < filenames.txt但是,程序为文本文件中的每个*bam文件执行,而不是全部执行(每次仅合并一个文件,并覆盖输出)。那么,如何运行该程序以递归方式合并所有*bam文件呢?
另外,在bash中还有其他选项(例如,使用循环for)来解决这个问题吗?
提前谢谢。
https://stackoverflow.com/questions/47698360
复制相似问题