Gibt es eine Möglichkeit zu verhindern, dass die aktuelle CMD-Eingabe durch einen leeren Verlaufsvorschlag gelöscht wird?


1

Im CMD-Interpreter unter Windows Upersetzt die Pfeiltaste (↑) die aktuelle Eingabe (nicht sicher, wie der genaue Begriff lautet) durch Befehle im Befehlsverlauf. Befehle, die zuvor ausgeführt wurden.

Eine merkwürdige Besonderheit von CMD ist, dass in einer neuen Instanz, wenn keine vorherigen Befehle im Verlauf vorhanden sind , das versehentliche Drücken der Aufwärtspfeiltaste die aktuelle Eingabe durch den letzten "Befehl" im Verlauf ersetzt. nichts, im Wesentlichen die Eingabe löschen. DownAußerdem kehrt das Drücken des Pfeils (↓) nicht zum vorherigen Befehl zurück, wie es die normale Navigation durch den Befehlsverlauf ermöglichen würde. Stattdessen sind Sie jetzt mit einer leeren Eingabezeile wieder auf dem ersten Platz. Wenn Sie also den ersten Befehl einer neuen CMD-Instanz eingeben, wird die Aufwärts-Taste gleichzeitig als Taste zum Löschen der Eingabe verwendet.

Dies scheint zwar ein relativ kleines Problem zu sein, das nur für das oben beschriebene, sehr spezielle Szenario gilt, und ob es sich nun um eine merkwürdige Eigenart von CMD oder einen tatsächlichen Fehler handelt, ich kann die Anzahl der Male in den letzten Tagen nicht zählen. ' Wir haben versehentlich lange und komplizierte Befehle verloren, als wir versuchten, fortgeschritteneres CMD zu erlernen, und es wäre schön, wenn es eine Lösung dafür gäbe. Wer weiß, vielleicht handelt es sich tatsächlich um ein "Feature, nicht um einen Bug", das einem tatsächlichen Designzweck dient, den ich verpasst habe. In jedem Fall wäre ich für etwas Erleuchtung dankbar.

Bildbeschreibung hier eingeben

Ein versehentliches Drücken der Auf-Taste (↑) später ...

Bildbeschreibung hier eingeben


tolle frage .. ich denke, das muss mir auch passiert sein .. ich habe nie wirklich versucht, eine lösung dafür zu finden .. dies ist keine antwort, aber manchmal kann es sich lohnen, strg-c vor dem aufwärts zu machen .. oder wenn jemand anderes Ihren Bildschirm anzeigt oder Sie ihn dann ::oder remvor dem Befehl kopieren / einfügen möchten, geben Sie ein. Du könntest es dann nur tun, wenn es leer ist ... (abgesehen von 2./3.) Aber ja, wenn du versehentlich aufschlägst, während du Sachen auf der Kommandozeile hast, verlierst du diese Sachen, großartiger Punkt. Es gibt einige cmd-Ersetzungen, die Sie vielleicht bevorzugen, aber ich weiß nicht, ob sie das Problem beheben.
Barlop

Auch hier gibt es keine wirkliche Antwort, aber es gibt auch F7, das Sie für den Befehlsverlauf verwenden können.
Barlop

1
@barlop <f7> führt in einer neuen Cmd-Shell nichts aus und speichert auch keinen Befehl, bis er ausgeführt wird.
DavidPostill

@DavidPostill Ich habe gerade F7 unter Windows 7 cmd.exe ausgeführt. A) Es wird eine GUI mit einer Liste von Befehlen angezeigt. B) Das, was Sie eingegeben haben, wird nicht sofort gelöscht. Wenn Sie also F7 drücken und möglicherweise sogar mit den Pfeiltasten navigieren, überlegen, aber nichts auswählen und einfach die Escape-Taste drücken, haben Sie immer noch das, was Sie eingegeben haben.
Barlop

1
@barlop OP bezieht sich auf eine " neue Instanz, wenn es keine vorherigen Befehle im Verlauf gibt " (wie mein Kommentar zu Ihnen oben war)
DavidPostill

Antworten:


1

Sie können versuchen, Clink zu Ihrer Umgebung hinzuzufügen . Es hat die Funktion "Protokollpersistenz zwischen Sitzungen" und wurde nach meinen Tests (ich habe einen langen Befehl eingegeben, ihn nicht ausgeführt, die Aufwärts- und dann die Abwärts-Taste gedrückt) der zuletzt verwendete Befehl angezeigt und der lange Befehl zurückgebracht. d getippt.


0

Es hat nicht viel damit zu tun, wenn wir die Funktionen der Dos-Konsole nicht ändern können, aber für meine Zwecke, wenn ich zumindest lange Zeilen oder komplizierte Dinge schreibe, mache ich mir Notizen in einer Art Notizblock.


1
Willkommen bei Super User! Dies ist wirklich ein Kommentar und keine Antwort auf die ursprüngliche Frage. Sie können jederzeit Ihre eigenen Beiträge kommentieren. Wenn Sie über eine ausreichende Reputation verfügen, können Sie jeden Beitrag kommentieren . Bitte lies Warum brauche ich 50 Ruf, um einen Kommentar abzugeben? Was kann ich stattdessen tun?
DavidPostill
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.