2017-08-04 3 views
-1

Ich frage mich, zu planen, wenn es möglich ist, ein Bash-Skript zu schreiben, das folgende tun würde:Bash-Skript mehrere Jobs

make firstprogram

, die ausführt, kompiliert und das erste Programm. Als es bis dieses Programm durchgeführt wird warten würde und dann ausführen:

make secondprogram

Wie kann ich den Bash-Skript schreiben, so dass es im Terminal ausgeführt wird?

+0

Ich bin nicht 100% sicher, was Sie fragen nutzen. Wenn Sie nur den ersten Befehl und dann den zweiten Befehl ausführen möchten, fügen Sie sie einfach in separate Zeilen in Ihrem Skript ein. Wenn Sie die zweite nur ausführen möchten, wenn die erste erfolgreich ist, können Sie Folgendes tun: machen Sie das erste Programm && machen Sie das zweite Programm. Hilft das? –

+0

Was ist das Problem oder die Frage? Da Stack Overflow den Schließen-Grund von Ihnen verbirgt: * "Bitte klären Sie Ihr spezifisches Problem oder fügen Sie zusätzliche Details hinzu, um genau das hervorzuheben, was Sie benötigen. Wie es derzeit geschrieben wird, ist es schwer zu sagen, was genau Sie fragen ] (https://stackoverflow.com/help/how-to-ask) Seite zur Hilfe bei der Klärung dieser Frage. "* – jww

Antwort

2

Haben Sie das vor? Es wird den ersten Befehl beenden, bevor der nächste ausgeführt wird. Wenn Sie nur die zweite ausführen möchten, wenn die erste erfolgreich ausgeführt wird (Beenden mit Beendigungscode 0), verwenden Sie & & statt;

#!/bin/bash 
make firstprogram; make secondprogram 
1

Sie müssen den Wartebefehl

#!/bin/bash 

make firstprogram 
firstprogram & 
wait 
echo "First program done!" 
make secondprogram 
secondprogram & 
echo "Second program done!" 
exit 0 
Verwandte Themen