You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GNU Parallel中传递分配的pdb文件名给csh脚本

解决GNU Parallel传递固定参数与迭代文件名的问题

原始问题场景

使用以下csh命令并行运行脚本时,myParallelScript.csh能接收ARR变量中的所有固定参数,但无法获取每个进程对应的pdb文件名:

set ARR = `echo $x $homeDir $pdbID $ligID $ligNum $dirName $cutoff` 

parallel -j 20 myParallelScript.csh "$ARR" ::: *.pdb

修正后的命令

在"$ARR"前添加{}占位符,即可让每个并行进程拿到对应的pdb文件名:

set ARR = `echo $x $homeDir $pdbID $ligID $ligNum $dirName $cutoff` 

parallel -j 20 myParallelScript.csh {} "$ARR" ::: *.pdb

原理说明

{}是GNU Parallel的默认占位符,会被自动替换为:::后列表中的当前元素(这里就是每个pdb文件名)。调整参数顺序后,脚本会先接收到专属的pdb文件名,再接收ARR里的固定参数,满足并行任务的需求。

内容的提问来源于stack exchange,提问作者Brian Bennion

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 03:59:50