/
SLURM does not recognize job script

SLURM does not recognize job script

Problem

Upon job submit Slurm refuses to recognize your job script as a valid batch script, although it looks OK in your editor:

glogin1:$ sbatch MY_SCRIPT 
sbatch: error: This does not look like a batch script.  The first
sbatch: error: line must start with #! followed by the path to an interpreter.
sbatch: error: For instance: #!/bin/sh

Solution

Check the file type on the login node with the file command.
In the following case

glogin1:$ file MY_SCRIPT
MY_SCRIPT: Bourne-Again shell script, UTF-8 Unicode (with BOM) text executable

you need to remove the byte-order mark (BOM) from the beginning of the file:

glogin1:$ LC_ALL=C sed -i '1s/^\xEF\xBB\xBF//' MY_SCRIPT

Re-check the file type, (with BOM) should have disappeared:

glogin1:$ file MY_SCRIPT
MY_SCRIPT: Bourne-Again shell script, UTF-8 Unicode text executable

For some background and discussion read e.g. here.



Related content

Too many open files
Too many open files
More like this
Slurm usage
Slurm usage
More like this
Multiple programs multiple data
Multiple programs multiple data
More like this
Compilation on CPU CLX
Compilation on CPU CLX
More like this
Advanced options
Advanced options
More like this
Compilation on CPU Genoa
Compilation on CPU Genoa
More like this