Ich führe eine Batchdatei aus, die diese beiden Zeilen enthält:
start C:\Users\Yiwei\Downloads\putty.exe -load "MathCS-labMachine1"
"C:\Program Files (x86)\Xming\Xming.exe" :0 -clipboard -multiwindow
Diese Batch-Datei wird verwendet, um die Xming-Anwendung und dann die PuTTY-App auszuführen, damit ich SSH in das Computerlabor meiner Universität einbinden kann.
Wenn ich dies jedoch ausführe und Xming noch nicht geöffnet ist, bleibt das cmd-Fenster geöffnet, sobald ich das PuTTY-Terminal verlasse. Nur wenn ich Xming bereits ausgeführt habe, wird das cmd-Fenster geschlossen, wenn ich das PuTTY-Terminal schließe. Ich habe versucht, exit
in die letzte Zeile der Batch-Datei einzufügen, aber ohne Erfolg.
batch-file
cmd
Yiwei
quelle
quelle
"C:\Program Files (x86)\Xming\Xming.exe"
ein Parameter aus putty.exe oder ein separater Befehl?Antworten:
Ändern Sie die Batch-Datei in
START
beide Programme, anstattSTART
eines und einesCALL
anderenWenn Sie es so ausführen, bleibt nach dem Starten des Programms kein CMD-Fenster geöffnet.
quelle
""
wenn der Titel erforderlich wird. Der zweite Befehl solltestart "" "C:\Program Files (x86)\Xming\Xming.exe" :0 -clipboard -multiwindow
ansonsten sein, es wird versucht, ein Befehlsfenster mit dem Titel "C:\Program Files (x86)\Xming\Xming.exe
Versuch,:0
mit Parametern auszuführen" zu öffnen-clipboard -multiwindow
start /B "GCFScape" "x64\GCFScape.exe">nul
Beispiel war hilfreich für michcmd.exe /C "start cmd.exe /C [...].bat ..."
Normalerweise beenden Sie eine Batchdatei mit einer Zeile, in der nur steht
exit
. Wenn Sie sicherstellen möchten, dass die Datei ausgeführt wurde und das DOS-Fenster nach 2 Sekunden geschlossen wird, können Sie die folgenden Zeilen hinzufügen:Der
exit
Befehl funktioniert jedoch nicht, wenn Ihre Batchdatei ein anderes Fenster öffnet, da bei jedem Öffnen des zweiten Fensters auch das alte DOS-Fenster angezeigt wird.LÖSUNG: Zum Beispiel gibt es ein tolles kleines kostenloses Programm namens BgInfo, das alle Informationen über Ihren Computer anzeigt. Angenommen, es befindet sich in einem Verzeichnis namens
C:\BgInfo
, um es aus einer Batchdatei mit dem/popup
Schalter auszuführen und das DOS-Fenster zu schließen, während es noch ausgeführt wird, verwenden Sie:quelle
/popup
einem Fehler gibt mir eigentlich war. Nach dem Entfernen hat alles funktioniertWenn Sie die Befehle in einen Befehl pro Datei aufteilen möchten, können Sie dies tun
und in der anderen Datei können Sie tun
Der Befehl cmd / c schließt das Eingabeaufforderungsfenster, nachdem die exe ausgeführt wurde.
quelle
Das hat bei mir funktioniert. Ich wollte nur das Befehlsfenster nach dem Beenden des Spiels automatisch schließen. Ich doppelklicke einfach auf die .bat-Datei auf meinem Desktop. Keine Abkürzungen.
quelle
Ich hatte dies, fügte ich hinzu,
EXIT
und anfangs funktionierte es nicht. Ich schätze, dass ich dencalled program exiting
in einer anderen Antwort hier erwähnten Rat benötige. Jetzt funktioniert es jedoch ohne weiteres - ich bin mir nicht sicher, was dies verursacht hat, aber der Punkt, den ich beachten muss, ist, dass ich es bin eine Datendatei aufrufen ,.html
anstatt das Programm , dass Griffe esbrowser.exe
, ich nicht bearbeiten etwas anderes tat , aber es genügt zu sagen , dass es die Hauptzugangs Seiten dieser Web - Dokumente und nur mit mit nur einer bat - Datei für den Zugriff viel ordentlicher isttitle.bat
,contents.bat
,index.bat
im Stammordner mit dem Rest des Inhalts in einem Unterordner.dh: content.bat liest
Es sieht auch besser aus, wenn ich die Bat-Dateisymbole nur für die Elemente an den Kontext anpasse, in dem sie sich befinden. Aber das ist eine andere Sache, indem ich die Bat-Dateien im Unterordner verstecke und benutzerdefinierte Symbolverknüpfungen zu ihnen im Stammordner mit den Bildern erstelle forderte die Anpassung auch versteckt.
quelle
Sie könnten das etwas gefährliche
taskkill /IM cmd.exe
ausprobieren : ..dangerous bcz, das das geöffnete cmd und alle zuvor geöffneten cmd tötet.Oder fügen Sie eine Bestätigung hinzu, um zu bestätigen, dass Sie die richtige cmd.exe hatten, und beenden Sie sie dann über PID, wie folgt:
Ersatz
(pslist &&A)
oder(tasklist /FI "PID eq %%A")
für die ,(taskkill /PID %%A)
wenn Sie es wollen , zuerst überprüfen (und vielleicht haben pstools installiert ist ).quelle
Versuchen Sie es einfach
/s
wie unten aufgeführt.Als letzte Zeile im Batch-Dateityp:
Der obige Befehl schließt das Windows CMD-Fenster.
/s
- steht für leise wie in (es würde auf eine Eingabe von der Tastatur warten).quelle
cmd
's Exit- Befehl hat keinen/s
Schalter (und es wäre sowieso sinnlos)Fügen Sie diesen Code am Ende des Ausführungscodes hinzu
c: \ windows> exit
quelle
I've tried adding exit to the last line of the batch file, but to no avail.