Kann ein Skript die Ausführung eines anderen signalisieren, den Start aber verzögern, bis es beendet ist?

Kann ein Skript die Ausführung eines anderen signalisieren, den Start aber verzögern, bis es beendet ist?

Ich brauche ein Skript, um die Ausführung eines anderen Skripts zu initiieren, aber das zweite Skript sollte erst ausgeführt werden, wenn der Rest des ersten Skripts innerhalb von ein oder zwei Sekunden abgeschlossen ist.

Die Reihenfolge wäre:

  1. Starten Sie Skript A.
  2. Skript A gibt an, dass Skript B ausgeführt werden soll.
  3. Skript A ist beendet.
  4. Ein oder zwei Sekunden durchgehen.
  5. Die Ausführung von Skript B beginnt.

Ist das möglich?

Antwort1

So könnten Sie es in Shell-Skripten tun. Jemand anderes müsste in Python antworten.

$ cat scriptA
#!/bin/sh
echo begin script A
(sleep 2; nohup ./scriptB 2>/dev/null) &
echo end script A at $(date)
$ cat scriptB
#!/bin/sh
date > scriptB.dat

Beispiellauf:

$ ./scriptA
begin script A
end script A at Sun Nov 26 20:46:10 EST 2017
$ sleep 2
$ cat scriptB.dat
Sun Nov 26 20:46:12 EST 2017

Antwort2

Kann das AppleScript ausgeführt werden, während der Shell-Code seine Arbeit verrichtet? Wenn ja, vielleicht

do shell script "pathtoyourcodehere"
delay 3
display dialog "fmpro interface foo here"

verwandte Informationen