为多个 fastq 中的读取次数创建读取长度计数

问题描述 投票:0回答:1

我有一个包含许多 fasq 文件的目录。我正在使用此命令来计算读取长度并输出到新文件中。

sed -n '2~4p' FAX08345_abafd786_a8df7914_1131.fastq | awk '{ print length }' > len.text

我想将此命令应用于目录中的所有 fastq 文件,并且我需要输出以创建唯一的文件名 len.x,例如,其中 x = fastq 的文件名。我在 Bash 工作。

我将不胜感激任何帮助!

请解释 bash 的 for 循环的语法。

bash loops
1个回答
0
投票

听起来这可能就是您想要做的:

awk '
    FNR == 1 { close(out); out="len."FILENAME }
    FNR >= 2 { print length() > out }
    FNR == 4 { nextfile }
' *.fastq

如果你的 awk 不支持

nextfile
则将其更改为:

awk '
    FNR == 1 { close(out); out="len."FILENAME }
    (2 <= FNR) && (FNR <= 4) { print length() > out }
' *.fastq
© www.soinside.com 2019 - 2024. All rights reserved.