Mercurial > repos > kkonganti > cfsan_cronology
diff 0.1.0/modules/cat/unique/main.nf @ 0:c8597e9e1a97
"planemo upload"
author | kkonganti |
---|---|
date | Mon, 27 Nov 2023 12:37:44 -0500 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/0.1.0/modules/cat/unique/main.nf Mon Nov 27 12:37:44 2023 -0500 @@ -0,0 +1,48 @@ +process CAT_UNIQUE { + tag "${meta.id}" + label "process_pico" + + module (params.enable_module ? "${params.swmodulepath}${params.fs}perl${params.fs}5.30.0" : null) + conda (params.enable_conda ? "conda-forge::perl conda-forge::coreutils bioconda::perl-bioperl=1.7.8" : null) + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? + 'https://depot.galaxyproject.org/singularity/perl-bioperl:1.7.8--hdfd78af_1' : + 'quay.io/biocontainers/perl-bioperl:1.7.8--hdfd78af_1' }" + + input: + tuple val(meta), path(file) + + output: + path '*_uniq.txt' , emit: txt + path 'versions.yml', emit: versions + + when: + task.ext.when == null || task.ext.when + + script: + def args = (task.ext.args ?: '') + def skip = (meta.skip_header ?: 1) + prefix = (task.ext.prefix ?: meta.id) + """ + newfile=\$(echo "$file" | sed -e 's/_w_dups/_uniq/g') + + head -n$skip "$file" > \$newfile + tail -n+\$(($skip + 1)) "$file" | sort -n | uniq >> \$newfile + + uniqver="" + + if [ "${workflow.containerEngine}" != "null" ]; then + uniqver=\$( uniq --help 2>&1 | sed -e '1!d; s/ (.*\$//' ) + + else + uniqver=\$( uniq --version 2>&1 | sed '1!d; s/^.*(GNU coreutils//; s/) //;' ) + fi + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + head: \$uniqver + tail: \$uniqver + sort: \$uniqver + uniq: \$uniqver + END_VERSIONS + """ +} \ No newline at end of file