2009-03-12 8 views
1

Iのqsub使用して、クラスタでジョブを送信するには、次の方法があります:私たちが行うことができるように、我々はbashスクリプトでRETURNとCTRL-Dをエンコードすることができる方法はありエンコードキーボードコマンド上へ、バッシュスクリプト

Submitting jobs from standard input 
     To submit a PBS job by typing job specifications at the command line, the user types 

       qsub [options] <return> 

     then types any directives, then any tasks, followed by 

       (in UNIX)  CTRL-D on a line by itself 
       (in Windows) CTRL-Z <return> 

     to terminate the input. 

を次のようなものがあります。

for i in path/*.txt; do echo "$i"; qsub [RETURN] /path2/mycode $i; [CTRL-D]; done 

答えて

4

あなたはパイプを介してリダイレクトを使用する必要があります。

for i in path/*.txt; do 
    echo "$i"; 
    echo "/path2/mycode $i" | qsub; 
done 
1

お試しecho /path2/mycode $i | qsub

これが機能しない場合や、より複雑なデータを渡す必要がある場合は、expectが役立ちます。

1

だけ明確にするために(カラスの答えは正確に右であるため) - CTRL-Dは、単に「ファイルの終わり」または「入力の終わり」を意味し、そのときそのテキストをqsubにエコーすると、自動的にファイルの終わりの信号が送信されます(これはCTRL-Dを押すのと同じです)

関連する問題