将相同的命令应用于多个子目录中的多个文件

时间:2014-11-19 16:14:19

标签: python bash fastq

我有一个包含94个子目录的目录,每个子目录包含一个或两个文件*.fastq。我需要对每个文件应用相同的python命令,并生成一个新文件qc_*.fastq

我知道如何将bash脚本单独应用于每个文件,但我想知道是否有办法编写bash脚本以立即将命令应用于所有文件

2 个答案:

答案 0 :(得分:3)

使用find:

find . -type f -iname "*.fastq" -exec python script {} \;

.:最顶层的目录

-type f:仅限文件

-iname "*.fastq":文件名以.fastq结尾(不区分大小写)

-exec python script:您要执行的命令。

答案 1 :(得分:2)

您可以尝试find . -name "*.fastq" | xargs your_bash_script.sh,使用find获取所有文件并将脚本应用于每个文件。