この単純なスクリプト ( simple_mail.sbatch
) をコマンド ラインから直接実行すると、2 つのメールが送信されます。ヘッド ノードと、私が試したクラスター ノードのいずれかで問題なく動作します。
#!/bin/bash
echo "Getting ready to send an e-mail from $HOSTNAME"
# Try using a pipe
echo 'Testing pipe version' | mailx -s 'testing mail app' user@example.com
# Try using a heredoc
mailx -s 'testing mail app' user@example.com << 'END'
Testing < version
END
echo "Finished on $HOSTNAME"
しかし、 を使用して実行するsbatch
と、キャプチャされた標準出力に最初と最後の echo コマンドの結果が表示されますが、電子メールは送信されません。
sbatch simple_mail.sbatch
「ラップされた」コマンドでsrun
あり、公平ではありません。
sbatch --wrap='echo "Testing" | mailx -s "testing mail app" user@example.com'
srun ./simple_mail.sbatch
バージョン情報:
slurm 14.11.8
CentOS Linux release 7.1.1503 (Core)
Heirloom mailx 12.5
ちなみに、一部のシステムmailx
では as と呼ばれることがありmail
ます。
stackoverflow に関する他のslurmとmailxの質問を見てきましたが、この問題に対処しているようには見えませんでした。
私は環境変数を調べ、すべての環境変数を同じに設定しようとしましたが (SLURM で始まるものも含め)、動作の違いは依然として残っています。