annotate 0.1.0/modules/cat/unique/main.nf @ 8:d8913a37810a

"planemo upload"
author kkonganti
date Mon, 27 Nov 2023 20:49:25 -0500
parents c8597e9e1a97
children
rev   line source
kkonganti@0 1 process CAT_UNIQUE {
kkonganti@0 2 tag "${meta.id}"
kkonganti@0 3 label "process_pico"
kkonganti@0 4
kkonganti@0 5 module (params.enable_module ? "${params.swmodulepath}${params.fs}perl${params.fs}5.30.0" : null)
kkonganti@0 6 conda (params.enable_conda ? "conda-forge::perl conda-forge::coreutils bioconda::perl-bioperl=1.7.8" : null)
kkonganti@0 7 container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
kkonganti@0 8 'https://depot.galaxyproject.org/singularity/perl-bioperl:1.7.8--hdfd78af_1' :
kkonganti@0 9 'quay.io/biocontainers/perl-bioperl:1.7.8--hdfd78af_1' }"
kkonganti@0 10
kkonganti@0 11 input:
kkonganti@0 12 tuple val(meta), path(file)
kkonganti@0 13
kkonganti@0 14 output:
kkonganti@0 15 path '*_uniq.txt' , emit: txt
kkonganti@0 16 path 'versions.yml', emit: versions
kkonganti@0 17
kkonganti@0 18 when:
kkonganti@0 19 task.ext.when == null || task.ext.when
kkonganti@0 20
kkonganti@0 21 script:
kkonganti@0 22 def args = (task.ext.args ?: '')
kkonganti@0 23 def skip = (meta.skip_header ?: 1)
kkonganti@0 24 prefix = (task.ext.prefix ?: meta.id)
kkonganti@0 25 """
kkonganti@0 26 newfile=\$(echo "$file" | sed -e 's/_w_dups/_uniq/g')
kkonganti@0 27
kkonganti@0 28 head -n$skip "$file" > \$newfile
kkonganti@0 29 tail -n+\$(($skip + 1)) "$file" | sort -n | uniq >> \$newfile
kkonganti@0 30
kkonganti@0 31 uniqver=""
kkonganti@0 32
kkonganti@0 33 if [ "${workflow.containerEngine}" != "null" ]; then
kkonganti@0 34 uniqver=\$( uniq --help 2>&1 | sed -e '1!d; s/ (.*\$//' )
kkonganti@0 35
kkonganti@0 36 else
kkonganti@0 37 uniqver=\$( uniq --version 2>&1 | sed '1!d; s/^.*(GNU coreutils//; s/) //;' )
kkonganti@0 38 fi
kkonganti@0 39
kkonganti@0 40 cat <<-END_VERSIONS > versions.yml
kkonganti@0 41 "${task.process}":
kkonganti@0 42 head: \$uniqver
kkonganti@0 43 tail: \$uniqver
kkonganti@0 44 sort: \$uniqver
kkonganti@0 45 uniq: \$uniqver
kkonganti@0 46 END_VERSIONS
kkonganti@0 47 """
kkonganti@0 48 }