2017-10-09 118 views
2

sbatchの「バッチスクリプト」の構文と意味は正式に文書化されていますか?「バッチスクリプト」の構文に関するドキュメントはどこにありますか

(例とは対照的に、私は、正式な文書を探しています。)


sbatchのmanページのDESCRIPTIONセクションでは、この段落で始まる約すべてです

sbatch submits a batch script to Slurm. The batch script may be given to sbatch through a file 
    name on the command line, or if no file name is specified, sbatch will read in a script from 
    standard input. The batch script may contain options preceded with "#SBATCH" before any exe- 
    cutable commands in the script. 

私はsbatchのマニュアルページで、 "バッチスクリプト"の構文について知ることができます。

たとえば、このスクリプトがシバン線で始まる必要があるということは何も言いません。 (一つはEXAMPLESセクションのすべての例には、それを満たしていることから、しかし、にこの要件を推論することができる。)

また、1コマンドラインに置くべきか通訳の何も言います。再び、EXAMPLESセクションの例から、/bin/shが適切であると推測することができるが、/bin/bashまたは/bin/zshも適切であると考える理由はない(例えば、または/bin/pythonまたは/bin/rubyなど)。

+1

Slurmはスクリプトをフォークし、スクリプトをシステムの 'exec'関数に渡し、この関数はすべての魔法を実行します。 –

答えて

1

実際には、ドキュメントには 'non-interactivescript'と理解される 'バッチスクリプト'しか指定されていません。あなたがコンパイルされたプログラムを提出しようとした場合

は、あなただけがシェバングについて語られています。

$ sbatch /usr/bin/time 
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 

しかし、あなたはコメント記号として#をサポートする任意の言語で書かれたスクリプトを提出することができます。そのコンテキストで最も一般的なのはBash、Python、Perlです。また、例えばLuaを使用することもできますが、リソース要求を#SBATCHディレクティブでスクリプトに組み込むことはできません。

関連する問題