fastqファイルを見つけるには、複数のサブディレクトリを繰り返す必要があります。
fastq ファイルは /path/sample/a/b/c/.fastq にあります。
現在私はこれを使用しています:
${inputDir}/**/**/**/*.fastq
私の入力ディレクトリは/path/sampleだけで、3つのサブフォルダのために "/**/"を3回使用します。ただし、時にはサブフォルダが変更されないことがあります。
複数のサブディレクトリを繰り返す他の効率的な方法はありますか?
私のbashスクリプト:
#! /bin/bash -l
CWD=$(pwd)
dateStamp=$(date +%s)
SeqProj="${inputDir}/**/**/**/*.fastq"
for Dir in $SeqProj
do
done
答え1
find / -iname '*.fastq' -exec /path/to/foo.sh {} \;
次に、foo.sh
ループ内で呼び出すすべてのタスクを実行するスクリプトがあります。 $ 1を使用して見つかったファイルを参照し、その名前をスクリプトに渡します。
Mikeの答えも効果があります。実際に何をしたいのかによって異なります。
答え2
最も簡単な方法は以下を使用することですfind
。
for Dir in $(find "$inputDir" -name '*.fastq')