提取shell中的总计数行(wc -l)数字

时间:2019-01-08 01:09:15

标签: shell wc

当我在目录下的多个文件上使用“ wc -l”时,我试图弄清楚如何提取最后的总数。例如:

currentDir$ wc -l *.fastq
    216272 a.fastq
    402748 b.fastq
   4789028 c.fastq
  13507076 d.fastq
   5818620 e.fastq
  24733744 total

我只需要从上面提取24733744。我尝试过

wc -l *.fastq | tail -l

获取

  24733744 total

,但不确定下一步该怎么做。如果我使用“ cut”,那么令人讨厌的是数字之前有多个空格,我也需要对其他文件夹使用此代码,并且空格数量可能会有所不同。

任何建议都值得赞赏。非常感谢你!

2 个答案:

答案 0 :(得分:3)

对于这个特殊的问题,这样做可能更容易:

cat *.fastq | wc -l

答案 1 :(得分:2)

这应该可以使用任意数量的空格:

wc -l *.fastq | tail -l |  tr -s ' ' | cut -f 2 -d ' '

示例:

    echo "  24733744 total" | tr -s ' ' | cut -f 2 -d ' '
24733744