Тема: В поисках хорошего выходного формата для использования значения, извлеченного из файла в новом скрипте / процессе в Nextflow
Кажется, я не могу понять это:
I Я пишу некоторые процессы в Nextflow, в которых я извлекаю значение из txt.file (PROCESS1), и я хочу использовать его во втором процессе (PROCESS2). Извлечение значения не проблема, но найти подходящий выходной формат. Проблема в том, что когда я сохраняю стандартный вывод (OPTION1) в канал, кажется, что-то вроде «/ n», что создает проблемы во втором сценарии.
В качестве альтернативы, потому что это не работает, я хотел сохранить вывод PROCESS1 в виде файла (OPTION2). Также это не проблема, но я не могу найти правильный способ прочитать содержимое файла в PROCESS2. Я подозреваю, что это как-то связано с "getText ()", но я попробовал несколько вещей, и все они потерпели неудачу.
Наконец я хотел попытаться сохранить вывод как переменную (OPTION3), но я не знаю как это сделать.
ПРОЦЕСС1
process txid {
publishDir "$wanteddir", mode:'copy', overwrite: true
input:
file(report) from report4txid
output:
stdout into txid4assembly //OPTION 1
file(txid.txt) into txid4assembly //OPTION 2
val(txid) into txid4assembly //OPTION 3: doesn't work
shell:
'''
column -s, -t < !{report}| awk '$4 == "S"'| head -n 1 | cut -f5 //OPTION1
column -s, -t < !{report}| awk '$4 == "S"'| head -n 1 | cut -f5 > txid.txt //OPTION2
column -s, -t < !{report}| awk '$4 == "S"'| head -n 1 | cut -f5 > txid //OPTION3
'''
}
ПРОЦЕСС2
process accessions {
publishDir "$wanteddir", mode:'copy', overwrite: true
input:
val(txid) from txid4assembly //OPTION1 & OPTION3
file(txid) from txid4assembly //OPTION2
output:
file("${txid}accessions.txt") into accessionlist
script:
"""
esearch -db assembly -query '${txid}[txid] AND "complete genome"[filter] AND "latest refseq"[filter]' \
| esummary | xtract -pattern DocumentSummary -element AssemblyAccession > ${txid}accessions.txt
"""
}
РЕЗУЛЬТАТ СКРИПТА ПРОЦЕССА2 ПОСЛЕ ВАРИАНТА 1 (примечание: выход = 573, компоновка без изменений)
esearch -db assembly -query '573
[txid] AND "complete genome"[filter] AND "latest refseq"[filter]' | esummary | xtract -pattern DocumentSummary -element AssemblyAccession > 573
accessions.txt
Спасибо за помощь!