384個のペアを繰り返し、384個の新しいリンクファイルを作成する

384個のペアを繰り返し、384個の新しいリンクファイルを作成する

名前が 1 文字だけで異なるファイルのペアが 384 個あります。これは、シーケンサーレーン1とレーン2のfastqファイルを表します。これを分析する前に、各ペアを接続する必要があります。

AA01_S1_L001_R1_001.fastq.gzそしてAA01_S1_L002_R1_001.fastq.gz最後までDH12_S384_L002_R1_001.fastq.gz。 L002をL001に追加し、分析のために同じディレクトリに384の新しいファイルを作成したいと思います。

Rでこれを実行しようとしているときに使用しているパッケージが古くなっています。私はこれがUnixではマイナーなことだと思いましたが、Unixについてはまったくわからない人です。

問題を修正するための編集:インデックスが作成されていないgzipファイルのようです。以下の出力を参照してください。どんなインデックスも必要ないと思います。最後にそうです。ペア間の唯一の違いはL001とL002であり、出力名は実際にはL001(兄弟ディレクトリにパイプされている)の名前を持つ必要があります。

gzip -cd AA01_S1_L001_R1_001.fastq.gz | head
@D00572:249:HT7WJBCXX:1:1106:8558:1978 1:N:0:AAGACTCTT+AAGGTGTTT
CAGCACCCATGACCGTGCCATTGCTCTCCTTGTCAAAGACACGCAGGCCC
+
DDDDDIIIIIIHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIHIIIII
@D00572:249:HT7WJBCXX:1:1106:12310:1984 1:N:0:AAGACTCTT+AAGGTGTTT
CCAAAGTCTCAGGACCAACAGGAATTTTGATTGGTGCACCAGAATCCAGT
+
DDDDDHIIIIIIIIIIIIIIIIHHIIIIIIIIIIIIIHIIIIIIIIIIIH
@D00572:249:HT7WJBCXX:1:1106:12936:1969 1:N:0:AAGACTCTT+AAGGTGTTT
NAAAGGACCTTGATCTCTTCCTCATATCTGTCTTCCTTCTGCGAGTACTT

ベストアンサー1

圧縮されたファイルはgzip(圧縮されている間)簡単に互いにリンクできるため、最初にファイルを解凍する必要はありません。圧縮されたリンクファイルを解凍すると、リンクされた圧縮されていないデータが得られます。少なくともそれは本当ですxz

接続のためにすべてのファイルを繰り返し、対応するファイルL001名のペアを作成し、両方のファイルを新しいディレクトリの1つのファイルにリンクできます。

mkdir output_dir

for name in *_L001_R1_001.fastq.gz; do
    other="${name/_L001/_L002}"
    cat "$name" "$other" >output_dir/"$name"
done

ここで、${name/_L001/_L002}文字列の最初の項目は値に置き換えられ、対応するファイルのペアが生成されます。この他のファイル名は変数に保存されます。_L001_L002$name$other

両方のファイルをリンクし、cat結果をoutput_dirディレクトリの新しいファイルに書き込みます。元のファイルはそのまま残ります。

bashksh93これはorのようなシェルがあると仮定します${parameter/pattern/string}

おすすめ記事