Bash History-ähnliche Funktion für die Windows-Eingabeaufforderung

9

Ich suche nach einer Eingabeaufforderungsalternative, die praktische Funktionen des Linux-Terminals unterstützt, wie z

  • Behalten Sie den Befehlsverlauf bei und greifen Sie mit der Aufwärtspfeiltaste darauf zu.
  • Protokollierungsbefehle in der Datei (wie: .bash_history).
  • Möglichkeit, die Größe des Befehlsfensters zu ändern.
  • Verwenden von Strg + C und Strg + V zum Kopieren / Einfügen von Inhalten.

Ich habe die Konsole durchlaufen , aber ich frage mich, ob sie etwas unterstützt, das über die Optimierung der Benutzeroberfläche hinausgeht. Ich erwarte eher, dass die Eingabeaufforderung den Verlauf der Befehle beibehält, damit ich sie nicht jedes Mal eingeben muss.

Kushal
quelle

Antworten:

4

Das alte Ding heißt "Doskey". es ist in der Tat ein vertrauter Anblick für uns alte Freunde ...

Schauen Sie sich die Hilfeseite an:

C: \ Users \ bubu> doskey /?
Bearbeitet Befehlszeilen, ruft Windows-Befehle ab und erstellt Makros.

DOSKEY [/ REINSTALL] [/ LISTSIZE = Größe] [/ MACROS [: ALL | : exename]]
  [/ GESCHICHTE] [/ INSERT | / OVERSTRIKE] [/ EXENAME = exename] [/ MACROFILE = filename]
  [Makroname = [Text]]

  / REINSTALL Installiert eine neue Kopie von Doskey.
  / LISTSIZE = size Legt die Größe des Befehlsverlaufspuffers fest.
  / MACROS Zeigt alle Doskey-Makros an.
  / MACROS: ALL Zeigt alle Doskey-Makros für alle ausführbaren Dateien an
                      Doskey-Makros.
  / MACROS: exename Zeigt alle Doskey-Makros für die angegebene ausführbare Datei an.
  / HISTORY Zeigt alle im Speicher gespeicherten Befehle an.
  / INSERT Gibt an, dass neuer Text, den Sie eingeben, in alten Text eingefügt wird.
  / OVERSTRIKE Gibt an, dass neuer Text alten Text überschreibt.
  / EXENAME = exename Gibt die ausführbare Datei an.
  / MACROFILE = Dateiname Gibt eine Datei mit zu installierenden Makros an.
  Makroname Gibt einen Namen für ein von Ihnen erstelltes Makro an.
  text Gibt Befehle an, die Sie aufzeichnen möchten.

PFEILE NACH OBEN und NACH UNTEN rufen Befehle ab; ESC löscht die Befehlszeile. F7 wird angezeigt
Befehlsverlauf; ALT + F7 löscht den Befehlsverlauf. F8-Suchbefehl
Geschichte; F9 wählt einen Befehl nach Nummer aus; ALT + F10 löscht Makrodefinitionen.

Im Folgenden sind einige spezielle Codes in Doskey-Makrodefinitionen aufgeführt:
$ T Befehlstrennzeichen. Ermöglicht mehrere Befehle in einem Makro.
$ 1- $ 9 Stapelparameter. Entspricht% 1-% 9 in Batch-Programmen.
$ * Symbol ersetzt durch alles, was dem Makronamen in der Befehlszeile folgt.

C: \ Benutzer \ bubu>

Der Verlauf wird zwar nicht in einer Datei gespeichert, Sie können natürlich auch doskey / history> file und so weiter verwenden, aber es ist nicht so automatisiert wie bash. Strg-C erzeugt einen Interrupt und wird daher nicht in Konsolen verwendet. Selbst xterm würde das nicht zulassen. (xterm verwendet die Mausauswahl als Kopie und den Rechtsklick als Einfügen.)

Alternativ können Sie Cygwin und stattdessen Bash verwenden. Es läuft auch unter Windows.

bubu
quelle
2

Die Konsole kann mehr als nur Windows cmd.exeals Zielshell verwenden. Wenn Sie beispielsweise den Windows-Port der BASH-Shell herunterladen, können Sie diesen stattdessen unter Konsole verwenden. In Verbindung mit zusätzlichen Tools wie dem MinGW (das den BASH für Windows-Port zusammen mit vielen Ihrer bevorzugten * nix-Terminal-Standbys wie lsund enthält wget) oder GNUWin32- Programmen in Ihrem Systempfad können Sie unter Windows eine sehr Unix-y-Konsole erhalten.

Andrew Lambert
quelle
2

Probieren Sie TCC / LE aus , das unter anderem Befehlszeilenbearbeitung und Verlauf bietet. Es ist die Freeware-Edition der Take Command-Umgebungssoftware.

Sobald Sie es installiert haben, können Sie angeben, welchen Aspekt Sie protokollieren möchten (Befehle, Fehler, Verlauf) und in welcher Datei sie gespeichert werden sollen. TCC / LE kann in Kombination mit Console oder ConEmu verwendet werden.

Geben Sie hier die Bildbeschreibung ein

Isxek
quelle
Um diesen Dialog anzuzeigen, führen Sie "OPTION" im Befehl TCC \ LE aus.
Yonixw
2

Es ist eine ziemlich alte Frage und bleibt immer noch dieselbe, bis ich kürzlich eine großartige Eingabeaufforderungsalternative namens ConEmu gefunden habe .

Geben Sie hier die Bildbeschreibung ein

Es unterstützt eine Vielzahl von Funktionen wie Registerkarten, Sitzungen zum automatischen Wiederherstellen beim Neustart, Power Shell-Integration und Hauptsache Befehlsverlauf. Obwohl es den dateibasierten Verlauf immer noch nicht unterstützt (daher geht der Verlauf beim Neustart verloren), plane ich als Open Source-Tool, diese Unterstützung hinzuzufügen (es sei denn, Windows 10-Eingabeaufforderungen erfüllen alle Versprechen, die ich in der Vorschau gesehen habe). . Vielen Dank an alle, die geantwortet haben.

Kushal
quelle