2016-03-23 5 views
0

Ich übergebe diese einfache Aufgabe an SGE über qsub. Wie kann ich die Ausgabe des Jobs sehen, der ein einfaches Echo in meinem Terminal ist? Ich meine, ich möchte es direkt auf dem Bildschirm nicht die Ausgabe in eine Logdatei oder etwas umleiten.Wie kann ich die Ausgabe eines über qsub in meinem Terminal übermittelten Jobs sehen?

So, hier ist der Job in Dummyjob gespeichert:

#!/bin/sh 
#$ -j y 
#$ -S /bin/sh 
#$ -q long.q 

sleep 30 
echo "I'm done!" 

Und dies ist der qsub Befehl:

qsub -N job_1 -cwd./Dummyjob 

Thank you!

Antwort

0

Es tut das nicht. Sie beziehen sich auf eine Batch-Einrichtung, z. B. How to submit a job using qsub.

Mit Blick auf die Befehlszeilenoptionen, das sind die Möglichkeiten:

-o <output_logfile> name of the output log file 
-e <error_logfile> name of the error log file 
-m ea Will send email when job ends or aborts 

Sie können ihn fragen Mail zu senden, wenn die Arbeit erledigt ist (erfolgreich oder nicht). Oder Sie könnte der Lage sein, es zu einem Fifo schreiben zu machen, zum Beispiel in einem Terminal würden Sie tun

mkfifo myFakeFile 
tail -f myFakeFile 

und verwenden Sie dann

-o myFakeFile 

wenn (in dieser Reihenfolge einreichen, so dass etwas wartet). Aber wenn das Programm eine Überprüfung durchführt, wird es nicht in einen FIFO schreiben (weil es keine reguläre Datei ist).

Weiterführende Literatur:

0

Die bisherige Antwort erwähnt, dass Sie einen 'Batch-Job-Skript' einreichen und dies wahr ist, so Sie werden die Ausgabe auf Ihrem Terminal nicht sehen (tty), aber der stdout/stderr wird an die Ausgabedateien gesendet. Dies bedeutet jedoch nicht, dass Sie keinen interaktiven Job über Grid Engine ausführen können. Sie können einfach "qrsh" anstelle von "qsub" verwenden und das Skript wird auf einem von Grid Engine ausgewählten Remote-Rechner ausgeführt - die Ergebnisse werden auf Ihrem Bildschirm angezeigt.

Hinweis: Sie müssen möglicherweise qrsh in Ihrem Grid-Engine-Cluster konfigurieren, damit dies funktioniert.

Verwandte Themen