为什么将 Condor 中的 Process Id 转换为 int 不能以这种方式工作?

Why converting to int the Process Id in Condor doesn't work this way?

所以我有以下 HTCondor 提交有效的描述:

n = $(ProcId) + 1
arguments = read_$INT(n).fa

为什么我不能这样做?

n = $INT($(ProcId) + 1)
arguments = read_${n}.fa

HTCondor submit description files 使用自己的替换格式,而不是 bash/shell 语法。

Macros

Parameterless macros in the form of $(macro_name:default initial value) may be used anywhere in HTCondor submit description files to provide textual substitution at submit time. Macros can be defined by lines in the form of

<macro_name> = <string>

为了引用宏(变量)n 使用 $(n) 而不是 bash 语法 ${n}。由于宏不能嵌套,根据另一个宏计算$INT需要一个中间变量:

proc1 = $(ProcId) + 1
n = $INT(proc1)
arguments = read_$(n).fa