Groovy Nextflow:输入文件是否为空?

Groovy Nextflow:输入文件是否为空?,groovy,nextflow,Groovy,Nextflow,这确实是一个下一个问题。我有一个进程,它会生成许多文件,其中一些是空的。我需要检测哪些文件和下一个进程应该跳过处理它们。看起来很简单,但代码: process demuxByPrimers { publishDir params.outdir input: file productFile from products output: file 'ITS*.fastq' into primers mode flatten when:

这确实是一个下一个问题。我有一个进程,它会生成许多文件,其中一些是空的。我需要检测哪些文件和下一个进程应该跳过处理它们。看起来很简单,但代码:

process demuxByPrimers {
    publishDir params.outdir

    input:
    file productFile from products

    output:
    file 'ITS*.fastq' into primers mode flatten

    when: 
    productFile.size() > 0

    script:
    println "Processing ${productFile}"
}

不好用。工作目录中的输入文件是符号链接,因此它们不是空的。。。有没有关于如何跳过处理空文件的想法?

另一种方法是在
产品上应用过滤器

process demuxByPrimers {
  publishDir params.outdir

  input:
  file productFile from products.filter{ it.size()>0 }

  output:
  file 'ITS*.fastq' into primers mode flatten

  script:
  println "Processing ${productFile}"
}

另一种方法是在
产品
频道上应用过滤器,例如

process demuxByPrimers {
  publishDir params.outdir

  input:
  file productFile from products.filter{ it.size()>0 }

  output:
  file 'ITS*.fastq' into primers mode flatten

  script:
  println "Processing ${productFile}"
}

因为在评估脚本时,尚未创建符号链接。不过,我同意有些令人困惑的地方,应该加以改进。您可能希望报告问题。因为在评估脚本时,尚未创建符号链接。不过,我同意有些令人困惑的地方,应该加以改进。您可能需要报告一个问题。