Arrêter l'exécution du script Ruby


103

Existe-t-il une méthode comme exitou dieen PHP qui arrête l'exécution d'un script Ruby?

Réponses:


103

Soit abortou exitaidera.


3
Comme @webwurst dit dans l'autre réponse, utilisez abort pour spécifier une fin d'échec du script et quittez pour une fin réussie.
Jrgns

85

abortest un alias pour Kernel.exit(false)lequel se termine immédiatement l'exécution.

exitest un alias pour Kernel.exit(true)et lève l' SystemExitexception, qui peut être interceptée. at_exitFonctionne également et finalizersest exécuté avant la fin.


7

abortpeut toujours se bloquer s'il y a des threads en attente. Si vous voulez vraiment terminer immédiatement, essayez:

Process.kill 9, Process.pid

0

Pour info pour ruby ​​on rails, vous pouvez simplement utiliser cette gemme shutup, dans le répertoire rails exécutez cette commande dans le terminal bash

gem install shutup

il trouvera le PID du serveur de rails et le tuera.

et vous pouvez également le faire lsof -wi tcp:3000au cas où vous n'auriez pas démarré le serveur sur un autre port sinon vous devriez changer le port3000

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.