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?

Était-ce utile?

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
scroll top