Wie kann man MinTTY auf Ctrl-C elegant schließen?

1162
Dims

Ich möchte, dass einige Server wie MongDB im Terminal unter Windows laufen.

Ich benutze den folgenden Befehl, um sie auszuführen:

start <PATHTOMONGO>\mongod.exe --dbpath <PATHTODATA> 

Das Standard-Windows-Terminal ist sehr grob. Es erlaubt beispielsweise kein einfaches Kopieren / Einfügen und keine (leichtere) Fenstergröße.

Also habe ich MinTTY von Cygwin mit dem folgenden Befehl ausprobiert:

<PATHTOMINTTY>\mintty.exe -e <PATHTOMONGO>\mongod.exe --dbpath <PATHTODATA> 

Ich fand, dass es gut funktioniert, abgesehen von einer Sache: Wenn ich Ctrl-C drücke, tötet es nur den Server und lässt es nicht zu, dass es ordnungsgemäß heruntergefahren wird.

Wenn ich den folgenden Befehl verwende:

<PATHTOMINTTY>\mintty.exe --hold always -e <PATHTOMONGO>\mongod.exe --dbpath <PATHTODATA> 

Ich sehe eine rote Meldung am Ende der Serverausgabe

<PATHTOMONGO>\mongod.exe: Interrupt 

und der Server stoppt einfach.

Im Gegensatz dazu gibt es in Windows startviele Meldungen aus, die auf ein ordnungsgemäßes Herunterfahren hinweisen.

Sieht aus wie minttyeine Übersetzung der Ctrl-CTastenkombination. Wie kann ich das vermeiden / konfigurieren?

1
Es funktioniert normalerweise mit Cygwin Bash für mich. Daniel B vor 8 Jahren 1
Versuchen Sie es mit Mongodb, wie ich es beschrieben habe Dims vor 8 Jahren 0

1 Antwort auf die Frage

0
Anon

Sie sind ein Opfer der berüchtigten Mintty-Ausgabe Nr. 56 - Verbessern Sie die Unterstützung für native Konsolenprogramme . Der Mintty-Wiki-Eintrag "Eingabe / Ausgabe-Interaktion mit Fremdprogrammen" weist darauf hin, dass Sie das Problem umgehen können, indem Sie einen Wrapper wie Winpty verwenden, wenn Sie das Problemprogramm in Mintty ausführen.

(Diese Frage ist wahrscheinlich ein Duplikat von Wie man den Windows-Prozess höflich von cygwin beendet. )