La tâche en arrière-plan de KShell ne s'affiche pas dans les travaux
-
22-07-2019 - |
Question
J'ai écrit un script KShell simple pour lancer une tâche en arrière-plan
#/bin/ksh
#startMonitoring
./detectFile /usr/local/data/testFile > fileHistory &
Je l'exécute avec la commande suivante
startMonitoring
Lorsque j'exécute des travaux, je n'obtiens aucun résultat, mais la commande est en cours d'exécution et s'affiche sous ps:
.512232 pts / 0 0:34 / bin / ksh ./detectFile / usr / local / data / testFile
Pourquoi ne puis-je pas voir l'élément dans les travaux et comment puis-je modifier mon script pour qu'il s'affiche dans les travaux?
La solution
La commande jobs
ne recherche que dans le shell actuel. Les scripts sont exécutés dans leur propre shell. Si vous sourcez votre script à la place, jobs
l'affichera:
$ . startMonitoring
$ jobs
[1] + Running . startMonitoring
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow