我在PBS系統上運行了一些陣列作業(儘管希望不需要關於PBS系統的知識來回答我的問題!)。我有24次運行,但是我想將它們分成5個子作業,所以我需要運行我的腳本120次。計算模型運行的ID
在給出-t 1-120
的PBS選項後,我可以使用$PBS_ARRAYID
得到當前的作業數組ID。不過,我想創建一些輸出文件。如果這些輸出文件使用了只有24次運行的ID,那麼最好使用它的子運行標識符(例如output-1a.txt,output-1b.txt ... output-1e)。 txt,output-2a.txt)。
因此,我需要的是一種計算方式來獲得ID(在1-24範圍內)連同子運行標識符(大概是在一組if語句中),它可以用於一個shell腳本。不幸的是,我的數學和我的Unix知識都不足以證明這一點。我認爲我需要與目前$PBS_ARRAYID
相對於120或24的商數/餘數有關,但這就像我已經得到的那樣...
非常感謝!這只是一個標準的bash外殼:) – ChrisW 2012-04-22 18:58:38
請注意,我在這裏得到了ascii轉換函數的小數點:http://mywiki.wooledge.org/BashFAQ/071 – 2012-04-22 19:35:29