最近在Mac上运行nextflow的一个流程,流程下载上千个文件,然后其中一步涉及将这上千个文件拷贝到一个文件夹下,运行的命令大概如下
cp d0001.rds d0002.rds d0003.rds ... d1000.rds data_rds/
在nextflow的流程中这样实现
process gatherRDS {
input:
file rds
output:
path "data"
script:
"""
mkdir data
cp $rds data/
"""
}
但是运行时不断遇到segmentation fault的情况(MacOS Big Sur 11.5)。在github找到了答案。加入ulimit -Ss unlimited
,可以解除对程序的内存限制,解决问题。
process gatherRDS {
beforeScript 'ulimit -Ss unlimited' // avoid long input segfault
input:
file rds
output:
path "data"
script:
"""
mkdir data
cp $rds data/
"""
}