Je cours un script qui exécute une commande qui dure trop longtemps, donc je veux l'interrompre. De l'aide? J'ai essayé de chercher beaucoup, et on m'a montré la commande kill. Bien, je ne peux pas le faire fonctionner. Au fait, j'utilise un Mac OS X. Merci!Comment répliquer CTRL + C dans un script shell?
Répondre
En supposant que vous avez PID du processus, envoyer un signal SIGINT:
kill -SIGINT PID
Si vous ne disposez pas du PID, vous pouvez essayer pkill
ou killall
, mais ils sont un peu moins sûr; un PID est le seul moyen d'identifier de manière unique un processus. Juste après vous frayer un autre processus, le PID doit être en $ !, afin que vous pouvez l'enregistrer puis
process-that-takes-a-long-time &
pid=$!
# other stuff
kill -SIGINT $pid
Que faire si je ne trouve pas le PID? Existe-t-il un autre moyen de répliquer CTRL + C? – hassaanm
Soyez prudent avec 'killall'. Sur certains systèmes, c'est similaire à "halt". –
timeout 10 your_command
Pour répliquer Linux Ctrl + C sur un terminal sous Mac OS X, utilisez ctrl + C! Sa même combinaison de touches A travaillé pour moi (premiers pas sur Mac)
edit: Je n'ai pas lu le script fonctionne en arrière-plan.
- 1. Comment Ctrl-Z dans le script Perl
- 2. Comment regrouper du code C/C++ avec C-shell-script?
- 3. Un script shell "try"
- 4. Appelez un script shell dans Java?
- 5. Comment faire un fichier dans un script shell et l'exécuter?
- 6. dans le script shell
- 7. Variables d'environnement globales dans un script shell
- 8. Comment parcourir les résultats probables de l'historique dans un shell Unix en utilisant CTRL-R?
- 9. su et sudo dans un script shell
- 10. Comment utiliser l'exécution parallèle dans un script shell?
- 11. comment manipuler un tableau dans un script shell
- 12. Comment rendre un script shell AIX exécutable?
- 13. Comment lancer un script shell en PHP?
- 14. pouvons-nous trouver un script shell dans le script Perl?
- 15. à l'aide bringue dans un script shell
- 16. Sous-chaîne Unix dans un script shell?
- 17. Comment puis-je convertir un script shell en script Perl?
- 18. foreach no match -C script shell
- 19. Opération temporaire dans un répertoire temporaire dans un script shell
- 20. Convertisseur de script shell vers c
- 21. Comment analyser rss-feeds/xml dans un script shell
- 22. Comment obtenir l'extension d'un fichier dans un script shell
- 23. Comment exécuter un script shell dans une application Android?
- 24. Comment rejoindre la variable 2 dans un script shell?
- 25. Comment utiliser la commande ssh dans un script shell?
- 26. Comment shell exécuter un fichier en C#?
- 27. Hudson - Windows esclave exécutant un script shell
- 28. Comment convertir ce script shell en un script Perl indépendant de la plateforme?
- 29. script shell + calculer réseau IP par script shell
- 30. Script shell pour test
Soyez plus précis. Courez-vous le script en arrière-plan? Attendez-vous qu'il se termine? Quel est votre scénario et comment essayez-vous de le faire ... quoi que vous essayiez de faire? – riwalk
Eh bien, fondamentalement, je cours un flux multidiffusion asr mais ne peux pas comprendre comment l'arrêter, donc j'essaye de faire ceci: asr server --source [source] --config [fichier de plist] --debug | (sleep 30 && [CTRL + C]) Le problème est que je ne sais pas comment répliquer CTRL + C – hassaanm