Kshell Hintergrund-Task zeigt, die nicht in Jobs
-
22-07-2019 - |
Frage
Ich habe ein einfach kshell Skript geschrieben, um eine Hintergrundaufgabe, kick off
#/bin/ksh
#startMonitoring
./detectFile /usr/local/data/testFile > fileHistory &
Ich betreibe es mit dem folgenden Befehl
startMonitoring
Wenn ich Jobs laufen erhalte ich keine Ergebnisse, aber der Befehl ausgeführt wird und zeigt sich in ps:
512.232 pts / 0 0.34 / bin / ksh ./detectFile / usr / local / data / testfile
Warum kann ich nicht sehe das Produkt in den Jobs, und wie kann ich mein Skript ändern, so dass es in Jobs nicht angezeigt?
Lösung
Der jobs
Befehl sieht nur in dem aktuell Shell. Skripte sind in einer eigenen Shell ausgeführt. Wenn Sie Ihr Skript stattdessen beziehen, dann wird jobs
es zeigen:
$ . startMonitoring
$ jobs
[1] + Running . startMonitoring
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow