我試圖在集羣中運行一個matlab腳本(ga_opt_main.m)。我必須寫一份作業提交文件,它基本上只是一個shell腳本。但我從來沒有寫過一個shell腳本,這是我寫的Bash腳本運行MATLAB錯誤
#!/bin/bash
#PBS -q *queuename*
#PBS -l nodes=1:ppn=20
#PBS -l walltime=02:00:00
#PBS -N ga_opt_main
module load matlab/R2011b
module list
unset DISPLAY
matlab -nodisplay -nodesktop -r *directory path/ga_opt_main.m*
MATLAB在後臺打開,但我的工作是不會運行。相反,我得到一個錯誤文件說
bash: -c: line 0: syntax error in conditional expression
bash: -c: line 0: syntax error near `fraction'
任何想法爲什麼發生這種情況,以及如何可以避免? 謝謝!
我以前從未使用PBS,但它看起來像星號之間的單詞是佔位符文本,你應該用其他東西替換。例如'#PBS -q * queuename *'看上去有點腥...... – 2012-08-04 00:29:22
@CypressFrankenfeld:在'-r「...之間傳遞的任何東西都必須是正確的命令,你可以在MATLAB命令窗口中輸入IDE。要運行一個腳本,你要麼瀏覽到文件所在的目錄,要麼將它的文件夾添加到'path',然後按名稱(或使用我已經顯示的RUN函數)來調用它。 – Amro 2012-08-04 00:36:39
@Amro,你完全正確。我將刪除該帖子,並只提及您的答案。 – 2012-08-04 00:46:45