web-dev-qa-db-fra.com

Créer un script bash

Très bien, juste pour vous prévenir, j'ai littéralement appris ce que le script bash était aujourd'hui. Quoi qu'il en soit,

J'ai cette série de programmes de reconnaissance vocale écrite en python, et je voulais créer une commande vocale qui redémarre ces scripts à l'aide d'un shell bash, car bash et terminal sont les unités de contrôle d'Ubuntu. Un peu comme l'invite de commande est pour Windows.

Je me demandais s'il existait un moyen de créer des fichiers bash comme des fichiers Windows DOS et s'il était possible d'arrêter un programme python

  • sans nuire, comme dans arrêter en toute sécurité.
  • redémarrer ce même programme python après l'avoir arrêté.
  • Félicitations pour m'avoir dit comment le redémarrer après un laps de temps déterminé.

Toute aide est appréciée et, comme toujours, est indispensable. Je sais que cela pourrait passer sous "stack overflow", mais honnêtement, j’ai estimé qu’il était plus approprié ici, étant donné que c’est strictement pour les langages de commande, pas vraiment les langages de script, et en particulier pour les questions relatives aux utilisateurs d’Ubuntu. Encore une fois merci.

1
TheCodingKlam

Vous pouvez créer de nouveaux fichiers bash simplement en créant un nouveau fichier et en le rendant exécutable.

par exemple.

touch simplebash.sh

ajoutez maintenant Shebang au fichier pour qu'il sache dans quel shell vous voulez exécuter le script.

Vous pouvez le faire avec ce simple écho en avant ou tout simplement éditer le fichier avec un éditeur

echo "#!/bin/bash" > simplebash.sh

Changer les permissions pour que ce soit exécutable

chmod a+x simplebash.sh

Maintenant, vous pouvez commencer à écrire votre script/vos commandes dans le script et l’exécuter dans le terminal avec ceci.

./simplebash.sh

Il y a différentes façons mais c'est la plus simple. Maintenant, arrêter votre script python en cours d’exécution n’est plus qu’envoyer le signal kill approprié.

par exemple. kill 15 processname or pid est le moyen le plus simple de dire au programme s'il vous plaît d'arrêter et de nettoyer après vous-même. Ces signaux sont généralement gérés par le script/programme eux-mêmes. S'il ne réagit à aucun type de signal, vous pouvez envoyer un kill 9 proccess name or pid qui est un signal qui ne peut pas être capturé par le programme/script et qui signifie autant que le terminer.

1
Ziazis