2015-04-27 37 views
0

我想發送一個作業數組,但仍然不明白整個過程(新手,因爲我)。在網站上,我發現這個:作業數組腳本

#!/bin/bash 
#$ -S /bin/bash 
#$ -cwd 
#$ -V 
# The 'myprog' below is serial hence no '-pe' option needed 

#$ -t 1-1000 
# ...tell SGE that this is an array job, with "tasks" numbered from 1 
# to 1000... 

./myprog < data.$SGE_TASK_ID > results.$SGE_TASK_ID 

糾正我,如果我錯了,數據已被索引SGE系統。但是,「.myprog」是什麼意思?是一個不同的bash腳本,它有真正的任務嗎?它保存在哪裏以及工作如何找到腳本?

+0

你能給一個鏈接到你找到的地方嗎? 「在網站上」並沒有真正的幫助,還有很多選擇。 – cdarke

+0

我的不好。它來自這個鏈接http://ri.itservices.manchester.ac.uk/csf/csf-user-documentation/sge-job-arrays/ – PicopicoPongPong

回答

1

通常myprog只是外部程序的通用名稱。在這種情況下,我會認爲這是做這項工作的程序。這可能是一個bash腳本,但它可以用任何語言編寫,包括C.

./myprog < data.$SGE_TASK_ID > results.$SGE_TASK_ID 

領先./表示程序(MYPROG)在當前目錄中找到。如果您願意,您可以用實際的目錄名稱替換.

< data.$SGE_TASK_ID表示「myprog」輸入流(稱爲stdin或「標準輸入」)來自文件而不是鍵盤。文件名是單詞「數據」。接着是變量SGE_TASK_ID的值。領先的$爲我們提供了變量的價值。 *

> results.$SGE_TASK_ID是類似的,除了這是「myprog的」輸出流(稱爲stdout,或「標準輸出」)轉到文件,而不是終端屏幕。

+0

感謝您的解釋。我似乎可以理解SGE是如何用於索引輸入的。假設我有一個包含所有可能是輸入的fasta文件的「fasta」目錄。根據你給我的鏈接,我已經嘗試過之前,沒有什麼事情發生後,我的fasta目錄使用「sed -n -e」$ SGE_TASK_ID p「datafile」。 – PicopicoPongPong