Ich weiß, dass wir die IEX-Konsole mit Control-C verlassen können. Ich bin neugierig, ob es einen Befehl gibt, in die Konsole einzugeben, der dasselbe auch tun würde.Ein anderer Weg zum Beenden von IEX als Ctrl-C
Antwort
ich von 3 Möglichkeiten denken kann umschalten kann eine IEx Shell zu beenden:
- Die erwähnte
<ctrl-c>
traf zweimal oder einmal gefolgt vonq
und dann<enter>
, <ctrl-g>
und dannq
+<enter>
,- und schließlich
System.halt
,
aber es gibt einen Unterschied zwischen System.halt
und dem anderen.
Nämlich, dass System.halt
"hält die Erlang Laufzeit" und die anderen nur "die Shell beenden".
Wenn nur eine Shellsitzung ausgeführt wird oder die Sitzung nicht an eine separate Laufzeit angeschlossen ist, führen beide Methoden zum gleichen Ergebnis. Wenn jedoch eine Sitzung mit einer separaten Laufzeit verbunden ist, z. via iex --remsh
(remote shell), dann läuft System.halt
in es wird die Laufzeit zu stoppen und so beide Shell-Prozesse/Laufzeiten zu beenden. Das Beenden einer Shell (über Methode 1. oder 2.) stoppt nicht die Laufzeit, mit der sie verbunden ist.
Fazit: Wenn Sie sich mit Ihrer Shell mit anderen Laufzeiten verbinden, dann wissen Sie, dass System.halt
die Laufzeit anhält, mit der Sie verbunden sind. Wenn Sie nicht möchten, verwenden Sie <ctrl-c>
.
UPDATE: Kürzlich habe ich auch über <ctrl-\>
herausgefunden. Sie können mehr darüber in this article lesen:
Was ich nicht wusste ist, dass Sie die Shell durch Senden von STRG- beenden können. Die Shell wird sofort beendet. Soweit ich weiß, hat es die gleiche Wirkung als Abbrechen der Shell in den Break-Befehl, es betrifft nicht Remote-Knoten und es funktioniert auch außerhalb von iex (zum Beispiel können Sie verwenden, um Ihre Tests zu beenden).
Sieht aus wie
System.halt
auch funktioniert.
run ‚h System.halt‘ bekommen Informationen über zusätzliche Argumente Sie gerne hinein passieren können – Letseatlunch
Ich dachte immer, ctrl-G von q gefolgt für verlassen die offizielle Art und Weise war die IEX-Shell zu verlassen. http://elixir-lang.org/docs/v1.0/iex/IEx.html Siehe unter Der Break-Befehl die auch zeigt, wie Sie zwischen alternativen Schalen usw.
Es gibt nichts über 'q' auf der angegebenen Seite. Nur eine kurze Anmerkung, dass das BREAK-Menü zum Beenden verwendet werden kann. Aber das Menü selbst enthält auch nicht die "(q) uit" -Option, daher sieht das vorerst völlig undokumentiert aus. – raacer
Disconnect von Shell und aktuellen Knoten zu stoppen. Dies ist, was Sie in den meisten Fällen benötigen.
1.1.
Ctrl+\
- Standardmethode zum Beenden der Erlang-Shell. Siehe "4.4 Wie kann ich die Erlang-Shell beenden?" in Erlang -- Getting Started.1.2.
Ctrl+C, a, Enter
- über den(a)bort
Befehl des Break Menüs.1.3.
Ctrl+C, Ctrl+C
- sieht wie undokumentierte Funktion des Break-Menüs aus.1.4.
Ctrl+G, q, Enter
- über dieq
(quit erlang) Commant des User Switch Menüs (siehe Erlang -- shell -- JCL Mode).Hinweis: diese Blätter entfernten Knoten lebendig, wenn Sie es mit
iex --remsh
angeschlossen haben (sieheiex --help
und IEx -- Remote Shells).Herunterfahren der Knoten, mit dem Sie verbunden sind.
2.1.
System.halt
- schnell und schmutzig heruntergefahren. Das Runtime-System wird mit dem Statuscode 0 beendet (Clean-Exit ohne Fehler). Sie können auchSystem.halt(:abort)
aufrufen, um mit dem Core-Dump abzubrechen. Wie:erlang.halt
.2.2.
:init.stop
(System.stop
in zukünftigen Versionen) - sauberes Herunterfahren. Alle Anwendungen werden reibungslos beendet, der gesamte Code wird entladen und alle Ports werden geschlossen, bevor das System durch den Aufrufhalt(Status)
beendet wird.Hinweis: diese Blätter Shell am Leben, wenn Sie eine Remote-Shell mit
iex --remsh
angeschlossen haben.
Beachten Sie, dass alle diese Optionen deaktiviert sind, wenn Erlang mit der Pause ignorieren gestartet wird, + Bi, Systemflag: iex --erl +Bi
(die nützlich sein können, wenn beispielsweise nur eine eingeschränkte Shell ausgeführt wird). Weitere Informationen finden Sie unter Erlang -- erl.
Warum haben Sie sich dazu gedrängt, bereits vorhandene Antworten zu wiederholen? –
@OnorioCatenacci Weil die beste Antwort zu kompliziert ist, keine saubere Struktur hat und keine Links enthält. – raacer
@OnorioCatenacci und übrigens, ich denke, einige Erklärungen in der besten Antwort sind nicht wirklich richtig. – raacer
Eingang in der Schale :c.q()
und
- 1. Ein anderer Weg Ausgang
- 2. Richtiger Weg zum Beenden/Beenden eines PyQt-Programms
- 3. Win32: Nachrichtenbenachrichtigung zum Schließen/Beenden anderer Anwendungen abrufen
- 4. Ansible SSH als ein Benutzer und Sudo als ein anderer
- 5. Stoff und Sudo als ein anderer Benutzer
- 6. Beenden von raw_input(), wenn anderer Text angezeigt wird
- 7. Erforderliche Variablen, der beste Weg zum Beenden, wenn leer?
- 8. Ganze Anwendung als anderer Benutzer (anderer Benutzer als root) starten
- 9. Verwenden von Python zum Ausführen anderer Programme
- 10. Ausführen von exec als anderer Benutzer
- 11. Der richtige Weg, um ein BeginInvoke zu beenden?
- 12. Wie führe ich ein Programm von der Eingabeaufforderung als ein anderer Benutzer und als Admin
- 13. Ein anderer Weg, anstatt Regex-Muster zu entkommen? Normalerweise
- 14. .htaccess zum Ausführen anderer Version von Python
- 15. Überprüfen, ob ein NSDate größer ist als ein anderer
- 16. Funktion, die als Eingabevariable von anderer Funktion
- 17. Verwendung anderer Chiffre als Standard
- 18. Connect Container als anderer Benutzer als root
- 19. Kann ich Elixir iex anpassen, um mit ctrl-D zu beenden?
- 20. Iex hüpfen Schritt für Schritt?
- 21. Powershell Remoting - kann keine exe als ein anderer Benutzer ausführen
- 22. Ausführen von UNIX-Befehlen als anderer Benutzer, von Java
- 23. beenden, abbrechen, zum Debuggen schlafen?
- 24. eine Oracle Stored Proc als ein anderer Benutzer Ausführen
- 25. Logout und login als ein anderer Benutzer git bash
- 26. X11: Führen Sie eine Gnome App als ein anderer Benutzer
- 27. Wird beim Kompilieren von Release und Debug ein anderer IL-Code und ein anderer Maschinencode generiert?
- 28. C++ - Zeichenfolgenwert als anderer Zeichenfolgenname
- 29. Firebase Login als anderer Benutzer
- 30. Warten auf Schleife zum Beenden
Es gibt auch ': init.stop', der die Erlang-VM anmutig stoppt. – ibizaman
bitte verbessern Sie Ihre Antwort nach @ Raacers Struktur und adoptieren Sie seine neue Information – flp
@flp Bitte beachten Sie meinen Kommentar hier https://stackoverflow.com/questions/30085376/another-way-to-exiting-iex-other-than-ctrl -c/30095378 # comment70835929_41253670 –