and*_*s-h 8 bash preprocessor sungridengine
是否可以在bash脚本中的注释中扩展变量?
我想写一个脚本来提供给SGE.该qsub
语法允许我将其他参数传递到使用bash脚本与开始内部线网格引擎#$
.例如,
#$ -q all.q
#$ -S /bin/bash
#$ -V
#$ -m beas
#$ -o run_20120103.out
Run Code Online (Sandbox Code Playgroud)
我想要的是,-o
参数是动态设置为变量的$1
.所以我会天真地写
#$ -o run_${1}.out
Run Code Online (Sandbox Code Playgroud)
但是,由于行以a开头#
,bash忽略它并且变量$1
未展开.
有任何想法吗?一些bash预处理器?还有其他方法吗?
编辑我只是选择了$1
一个例子.它也可以$FOO
或$BAR
.
变量扩展发生在外壳内存中,不会影响文件。因此,bash扩展什么都没有关系。
取而代之的是,您可能会生成脚本以即时运行,并且一切都已扩展:
cat << EOF | qsub [options] -
#$ -o run_$1.out
cmds
EOF
Run Code Online (Sandbox Code Playgroud)