我运行如下命令: 在SLURM prolog脚本中的ifconfig,sminfo,但是如果检查输出文本文件,则不执行这些命令并返回错误:找不到命令并输出空输出。如果我尝试如下命令:ls,hostname;他们运作良好。 我尝试手动执行脚本它的工作和命令:sminfo,ifconfig运行良好。
问题是什么?
#!/bin/bash
echo "==Pre job==:"
work_dir=`scontrol strong textshow job $SLURM_JOBID | grep ' WorkDir' | awk '{print $1}' | awk -F'=' '{print $2}'`
sminfo_out=`sminfo`
cd $work_dir
echo $sminfo_out > /tmp/sminfo_out3
python check_sm.py --sm_input "$sminfo_out"
答案 0 :(得分:0)
Slurm documentation on prolog and epilog scripts的第二句读作:
请注意,出于安全原因,这些程序没有搜索功能 路径集。在程序中指定完全限定的路径名或 设置“PATH”环境变量
因此,您可以在脚本开头显式设置PATH
(运行echo $PATH
以查找其中包含的内容),或者使用正在运行的命令的完整路径(使用{{1找出命令的完整路径。)