简体   繁体   中英

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

So I have the following HTCondor submit description that works:

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

Why can't I do this instead?

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

HTCondor submit description files use their own format for substitutions, not bash/shell syntax.

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>

In order to refer to a macro (variable) n use $(n) instead of the bash syntax ${n} . Since macros cannot be nested, evaluating $INT based on another macro requires an intermediate variable:

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM