2017-07-25 110 views
1

我在SLURM prolog脚本中运行如下命令: ifconfig,sminfo,但是这些命令未执行并返回错误:未找到命令并且如果检查输出文本时为空输出文件。如果我尝试命令如:ls,hostname;他们工作得很好。 我试着手动执行脚本,它的工作和命令:sminfo,ifconfig运行良好。SLURM无法识别序言脚本中的命令

什么问题?

我的脚本:

#!/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

Slurm documentation on prolog and epilog scripts的第二句读取:

Note that for security reasons, these programs do not have a search path set. Either specify fully qualified path names in the program or set the "PATH" environment variable

让你无论是在脚本的开头设置PATH明确(运行echo $PATH找出它所包含的内容)或者使用正在运行的命令的完整路径(使用which command查找命令的完整路径)。

+0

可以很好地使用命令的完整路径 – IBR