私はPBSシステム上でいくつかの配列ジョブを実行しています(私の質問に答えるにはPBSシステムについての知識は必要ないと思いますが)。私は24回実行しましたが、それぞれを5つのサブジョブに分割したいので、スクリプトを120回実行する必要があります。モデルランのIDを計算する
-t 1-120
というPBSオプションを指定した後、$PBS_ARRAYID
を使用して現在のジョブ配列IDを取得できます。しかし、いくつかの出力ファイルを作成したい。これらの出力ファイルが、サブラン識別子(例えば、output-1a.txt、output-1b.txt ... output-1e)と一緒にわずか24回実行された場合のIDを使用するのが最もよいでしょう。 txt、output-2a.txt)。
私が必要とするのは、(おそらく一連のif文で)サブラン識別子とともにIDを(1-24の範囲で)取得する方法を計算する方法です。シェルスクリプト。残念ながら、私の数学も私のUnixの知識もこれを理解するのには十分に良いものではありません。私は120/24のどちらかを基準にして現在の$PBS_ARRAYID
に基づいて商/剰余と何かする必要があると仮定しますが、それは私が持っている限りです...
ありがとうございました!それはちょうど標準的なbashシェルです – ChrisW
私は10進数ascii変換関数をここで得たことに注意してください:http://mywiki.wooledge.org/BashFAQ/071 –