同じ名前のfasta.qzシーケンスファイルがありますが、リンクする必要がある2つの異なるフォルダにあります(常に同じ名前の2つのフォルダのみをリンクしてください)。ディレクトリ構造は次のとおりです。
注文
**|--folderA**
| \-- \--MOSA_F_TAC01n.1.fq.gz
| \-- --MOSA_F_TAC08n.rem.1.fq.gz
| \-- --WAIN_N_15m.rem.2.fq.gz
| \-- --MOSA_F_TAC01n.2.fq.gz
| \-- --MOSA_F_TAC08n.rem.2.fq.gz
| \-- --WAIN_N_16m.1.fq.gz
| \-- --MOSA_F_TAC01n.rem.1.fq.gz
| \-- --PAUA_F_16v.1.fq.gz
| \-- --WAIN_N_16m.2.fq.gz
| \-- --MOSA_F_TAC01n.rem.2.fq.gz
| \-- --PAUA_F_16v.2.fq.gz
**| \--folderB**
| \-- --MOSA_F_TAC01n.1.fq.gz
| \-- --MOSA_F_TAC08n.rem.1.fq.gz
| \-- --WAIN_N_15m.rem.2.fq.gz
| \-- --MOSA_F_TAC01n.2.fq.gz
| \-- --MOSA_F_TAC08n.rem.2.fq.gz
| \-- --WAIN_N_16m.1.fq.gz
| \-- --MOSA_F_TAC01n.rem.1.fq.gz
| \-- --PAUA_F_16v.1.fq.gz
| \-- --WAIN_N_16m.2.fq.gz
| \-- --MOSA_F_TAC01n.rem.2.fq.gz
| \-- --PAUA_F_16v.2.fq.gz
ご覧のとおり、ファイル名は同じです(内容が異なります。つまり、補完的なので必要ですcat
)。ファイル名を保持し、同じファイルをその名前のファイル(フォルダCという新しいフォルダなど)にリンクしたいと思います。
答え1
次のようにしてみてください。
for FILE in dir1/* ; do
FILE2=dir2/${FILE#*/}
if [ -f $FILE2 ] ; then
cat $FILE $FILE2 > dir3/${FILE#*/}
fi
done
ここではdir1
、ソースディレクトリの1つ、dir2
は別のソースディレクトリ、およびdir3
は出力ディレクトリです。
答え2
それほど簡単ではないと思います。ファイルの「拡張子」は、そのファイルがgzip
ped データであるため、gunzip
接続する前に ped でなければならないことを示します。 Christian Gibbonsの回答を盗んでみてください。
for FILE in dir1/* ; do
FILE2=dir2/${FILE#*/}
if [ -f $FILE2 ] ; then
gunzip -c $FILE $FILE2 | gzip > dir3/${FILE#*/}
fi
done