So reduzieren Sie den Schmerz der Eingabeaufforderung

38

Ich möchte lernen, die Eingabeaufforderung unter Windows besser zu verwenden, um mehr Kontrolle über das zu haben, was ich tue, und nur für die Lernerfahrung. Der größte Ärger, den ich gerade habe, ist das Tippen. Wenn ich eine Operation an einer Datei mit einem großen Pfad ausführen möchte, sitze ich da und tippe sie mindestens eine Minute lang aus. Wenn ich einen Fehler mache, muss ich die Aufwärtspfeiltaste drücken und durch das Ganze scrollen und suchen Was habe ich falsch gemacht. Gibt es irgendwelche Werkzeuge, um dies zu vereinfachen?

Adam
quelle
Ich würde die Windows-Eingabeaufforderung lieben, um die "-o vi" -Option zu haben, die Bash macht. Es macht die Dinge sehr schnell (wenn Sie ein bisschen von vi natürlich wissen)
OscarRyz
2
Tab Vervollständigung! Jedes anständige Terminal wird es haben (und wenn dies nicht der Fall ist, würde ich die Fähigkeit des Terminals in Frage stellen, an dem Sie sitzen).
new123456
Vor allem, wenn Sie lernen, lernen Sie PowerShell. Für alte Fürze kann es schwierig sein, einen neuen Trick zu lernen. Aber für Anfänger ist es gut, diesen Rat frühzeitig einzuholen, um Ihre Lernkräfte von Anfang an auf den besten Weg zu lenken.
music2myear

Antworten:

33

Wenn Sie die Eingabeaufforderung nur unter Windows verwenden möchten , können Sie Windows PowerShell verwenden , da dies einfacher ist als die ursprüngliche Eingabeaufforderung, und einige Verhaltensweisen von den * nix-ähnlichen Terminals kopieren. (Es bietet auch viel mehr Funktionen, aber zunächst ist es, zumindest für mich, eine "einfachere Befehlsshell").

Bild von Powershell

Edit: Geändertes Bild für ein "freundlicheres".

Gnoupi
quelle
Nach dem Aussehen von Wikipedia sieht das Bild etwas härter aus als das, was ich gerade benutze. Ich habe immer noch Probleme, Windows zu lernen, geschweige denn eines dieser * nix-Terminals, aber ich werde es mir dankend ansehen.
3
Ja, in diesem Fall ist es vielleicht nicht wirklich angepasst. Für mich, wie ich * nix-Terminals kannte, hat mir diese PowerShell geholfen, da sie auch viele Aliase (Verknüpfungen) für gewöhnliche * nix-Befehle bietet. Normalerweise funktioniert "ls" wie "dir". Im Allgemeinen ist es meiner Meinung nach auch für die "Tab-Vervollständigung" konsistenter als für die ursprüngliche Shell, was die Navigation erleichtert.
Gnoupi
1
PowerShell ist wirklich der richtige Weg. Als langjähriger Benutzer von cmd.exe kann ich Ihnen sagen, dass es wirklich begrenzt ist. Wenn Sie etwas Cleveres tun möchten, benötigen Sie VBScript oder ähnliches, und das müssen Sie lernen. Jeder Befehl hat seine eigene Syntax und sie sind selten ähnlich, so dass Sie jeden einzelnen lernen müssen und nicht leicht erraten können. PowerShell ist viel leistungsfähiger und konsistenter, sodass Sie das, was Sie von einem Befehl gelernt haben, auf einen anderen anwenden können.
Serienbastler
Außerdem verfügen einige PoSh-Befehle über Aliase, die mit den cmd-Befehlen identisch sind, um den Übergang zu erleichtern. ZB dir works (mit Alias ​​Get-ChildItem). In PowerShell können Sie aber auch die Registrierung und andere Dinge steuern.
Serienbastler
1
Außerdem verfügt PowerShell über einen VIEL besseren Hilfetext (IMO). Hat Ihnen jemals jemand gesagt, Sie sollen die cmdpages lesen?
Hallo71
45

Mit der TabTaste können Sie Dateinamen automatisch vervollständigen. Beachten Sie jedoch, dass Sie zuerst genügend Dateinamen eingeben müssen, um den Namen eindeutig zu identifizieren. Andernfalls müssen Sie falsche Übereinstimmungen durchmischen. Sie haben beispielsweise einen Ordner mit diesen Dateien und es ist Ihr aktuelles Verzeichnis, in dem Sie sich befinden cmd:

.
..
Su.exe
Sup.txt
SuperUser.COM

Wenn Sie automatisch vervollständigen SuperUser.COMmöchten, müssen Sie eingeben und supedann drücken Tab, da keine der anderen Dateien mit diesen 4 Zeichen beginnt. Beachten Sie, dass Sie, wenn Sie getippt suund dann gedrückt haben Tab, Tabzweimal drücken könnten , um zu SuperUser.COM zu gelangen, oder Sie könnten tippen ShiftTab, um die Liste rückwärts durchzugehen und dorthin zu gelangen.

Ein weiterer Trick ist, wenn Sie die Datei in einem Explorer-Fenster haben, können Sie sie in das cmdFenster ziehen und den Namen für Sie eingeben.

John T
quelle
2
Das funktioniert super, danke, aber wenn ich manchmal durch meine Dateien gehe, gibt es einen Weg zurück zu gehen?
14
Ja, Shift-Tab :)
John T
2
Bonus Tatsache: shift+ <any key that cycles through tabs/windows>ist immer gleichbedeutend mit umkehren zB alt-tab-> alt-shift-tab.
Glenneroo
27

Hier einige weitere Tipps und Tricks zur Verwendung der Eingabeaufforderung :

"... ziehen Sie Dateien oder Ordner aus einem Explorer-Fenster in eine Eingabeaufforderung. Dadurch wird der angegebene Pfad eingefügt, als hätten Sie ihn manuell eingefügt ..."

Dies ist ein weiterer Weg, um den Tippaufwand für lange Dateipfade zu reduzieren.

Ray Vega
quelle
3
Jetzt ist das nützlich. Ich wusste das überhaupt nicht.
EvilChookie
1
Hatte das schon in meiner ursprünglichen Antwort: P
John T
Dies funktioniert nicht in Windows Vista oder Server 2008, funktioniert jedoch erneut in Windows 7 und Windows Server 2008 R2. Weitere Informationen finden Sie unter superuser.com/questions/27347/what-is-conhost-exe/28897#28897 .
Reuben
Die anderen Ratschläge gibt es auch sehr gut
Casebash
21

Hier ist die vollständige Liste der Funktionstastenaktionen:

F1 retypes the previous command one character at a time
F2 brings up a dialog and asks “Enter the char to copy up to:”
F3 retypes the last command in full
F4 brings up a dialog and asks “Enter char to delete up to:”
F5 as for F3
F6 Print EOF character (Ctrl+Z)
F7 brings up a dialog of all the recent command history
F8 brings up each of the most recent commands, one at a time
F9 brings up a dialog and asks “Enter command number:”
harrymc
quelle
2
Hat jemand F4 zur Arbeit gebracht? Das Dialogfeld wird angezeigt, aber nicht gelöscht.
Charles Beattie
15

Durch Drücken von F7 werden die zuletzt ausgeführten Befehle aufgelistet.

cd \ um zum c:Verzeichnis zurückzukehren.

user8228
quelle
2
Hmm, das wusste ich nicht.
Gnoupi
COOL! (Das ist alles, was ich zu sagen habe, aber eine Antwort muss 15 Zeichen lang sein ...)
Travelling Tech Guy
Ich benutze die Eingabeaufforderung die ganze Zeit und ich wusste nicht, dass F7 eine - sehr praktisch!
Justin
8

Oft können Sie die Eingabe reduzieren, indem Sie sich im richtigen Verzeichnis befinden. Sie können eine Befehlsshell in dem Verzeichnis öffnen, das in einem Explorer-Fenster angezeigt wird, indem Sie cmd.exe zu den Ordnertypzuordnungen hinzufügen.

(Extras - Ordneroptionen - Dateitypen - Ordner - Erweitert - Neu - cmd)

Wenn Sie dann cmd auswählen, indem Sie mit der rechten Maustaste auf diesen Ordner klicken, hat das sich öffnende Befehlsfenster als aktuelles Verzeichnis das des Ordners, auf den Sie geklickt haben.

Alt-Text

Diomidis Spinellis
quelle
1
Für XP-Benutzer stellt MS Power Toys für XP dies ebenfalls zur Verfügung: microsoft.com/windowsxp/Downloads/powertoys/Xppowertoys.mspx
akf
Ich wusste, dass es verschiedene Widgets gab, die dies für Sie erledigten, aber ich mag immer eine Selbstkonfiguration, die ein Widget ersetzt. Danke für diese Info.
music2myear
7

Wenn Windows PowerShell zu überwältigend ist, gibt es auch einige Cmd-Ersatzshells:

Und mehr kann über Google gefunden werden.

Harrymc
quelle
+1 für cygwin: Wenn Sie dieses Toolset verwenden, können Sie die von Ihnen erlernten Tricks auf Linux-Installationen und bis zu einem gewissen Grad auf andere Betriebssysteme (BSD, MacOS, ...) übertragen, auf denen dieselben oder ähnliche Tools und bash-a-ähnliche Shells vorhanden sind. Wenn PowerShell überwältigend ist, ist es wahrscheinlich auch Cygwin.
David Spillett
+1 für Console, die keine Ersatzshell ist, sondern ein besseres Terminal für vorhandene Shells.
Wfaulk
+1 für Cygwin, aber der Emulator ist schrecklich. Würde in diesem Fall Terminator + Cygwin vorschlagen.
Jamesh
Ich bin ein großer Fan von TCC (seit 4DOS, zurück um 1989); Ich ziehe es PowerShell sehr vor. Und jetzt, da TCC / LE Freeware ist, kann ich .BTM-Skripte komplett mit einer TCC-Installation senden :-) Beachten Sie, dass PowerCMD und Console keine Ersatzbefehlsprozessoren sind, sondern Ersatzterminals. Persönlich verwende ich Console mit mehreren Registerkarten, von denen jede eine TCC- (oder Cmd- oder Cygwin-) Sitzung enthält.
Billdehaan
andlinux.org andLinux ist viel benutzerfreundlicher als Cygwin.
7

Während der Verwendung der Eingabeaufforderung verwende ich ständig den Aufwärtspfeil (und den Abwärtspfeil), um durch die zuletzt verwendeten Befehle zu scrollen. Vor allem, wenn ich einen langen Befehl eingegeben habe und nur einen Teil davon bearbeiten möchte, ohne ihn erneut einzugeben.

Ein kurzes Beispiel, wenn Sie:

c:\>ping 192.168.1.1

Wenn Sie eine ähnliche Adresse anpingen möchten, drücken Sie einfach den Aufwärtspfeil. Der Befehl wird in der Eingabeaufforderung mit dem Cursor am Ende angezeigt. Dies erleichtert das einmalige Zurücksetzen und Ändern der Adresse in 192.168.1.2 oder ähnliches.

JYelton
quelle
4

Ich schlage vor, dass Sie die Eingabeaufforderung verwenden.

Ich weiß, es scheint scherzhaft zu sein, aber das ist ein ernsthafter, wenn nicht sofort hilfreicher Rat. Es gibt eine Menge zu wissen, und es tief zu absorbieren, Sie haben es über verwenden und immer wieder.

dmckee
quelle
9
Ja, er will, aber er möchte wissen, was er damit anfangen kann, denke ich. Da das "Bruteforcen" der verfügbaren Befehle einige Zeit dauern kann.
Gnoupi
Ich habe die Eingabeaufforderung gelernt, indem ich ein ehrgeiziges Batch-Skript für die Systembereitstellung geschrieben habe. Ich habe versucht, alle Funktionen einzubeziehen, von denen ich dachte, dass sie der gewünschten Aufgabe zugute kommen, indem ich immer wieder in Foren und bei anderen, die ich kannte, Fragen stellte, bis sie funktionierten. 1500 Zeilen und viel gute Erfahrung, die ich noch benutze.
music2myear
@ music2myear du bist 28, alt genug. Wo warst du, dass du DOS zu seiner Zeit nicht gelernt hast?
Barlop
Mein Vater kaufte unseren ersten Computer, als ich 10 Jahre alt war. Ich glaube DOS 4 und Win 3.1. Ich war nur daran interessiert, Apps zu malen und welche Spiele es spielen könnte. Erst 98 bekam ich meinen eigenen Computer, um Ingenieurwissenschaften zu studieren. Und erst als dieses System anfing Probleme zu haben und ich es selbst beheben musste, bekam ich wirklich Zugang zu Technologie und Computern. 2003 bekam ich einen Job als IT-Supporter und erstellte das zuvor erwähnte Batch-Skript. Ich war für Geek-Verhältnisse nur ein Spätstarter.
music2myear
4

Aktivieren Sie den Schnellbearbeitungsmodus, um:

  • Text kopieren mit: Text auswählen + ENTER
  • Fügen Sie den Code ein, indem Sie mit der rechten Maustaste klicken.

Bildbeschreibung hier eingeben

Ich ändere auch die Schriftart und das Layout auf etwas Angenehmeres als die Standard-Bitmap.

Bildbeschreibung hier eingeben

Schließlich fügen Sie dem Bearbeitungsfenster weitere Zeilen und Spalten und dem Puffer weitere Zeilen hinzu.

Bildbeschreibung hier eingeben

Screenshots sind auf Spanisch, aber auf Englisch sind sie genau an der gleichen Stelle

OscarRyz
quelle
1
Das Ändern der Breite des Konsolenfensters ist eines der ersten Dinge, die ich auf einem neuen Computer mache.
Justin
+1 Standardhöhe ist genauso nutzlos.
Glenneroo
2

Nehmen Sie auf jeden Fall eine Kopie von Cygwin und fügen Sie den Ordner \ bin Ihrer PATH-Variablen hinzu. Es ist wie eine verwendbare Eingabeaufforderung!

Aber die einzige Möglichkeit, sich daran zu gewöhnen, besteht darin, sich daran zu gewöhnen.

Phoshi
quelle
Es fällt mir schwer, mit Fenstern ohne meine Bash-Aufforderung zu leben
jweede
1

Wenn Sie XP verwenden (Sie kennen Vista nicht), können Sie ein Powertoy herunterladen , das Ihrem Explorer-Ordner-Kontextmenü den Menüeintrag "Befehl hier öffnen" hinzufügt.

Eine andere nützliche Funktion ist, die Verwendung der Windows-Standardpfade für alles zu beenden. Sie sind einfach zu schwer zu merken und die Räume können zu einem Problem werden. Die Verwendung der Verzeichnisstruktur von Linux kann eine echte Zeitersparnis bedeuten. Meine Verzeichnisse sehen ungefähr so ​​aus (als Beispiele):

 - C:\usr\bin\firefox 
 - C:\usr\bin\7zip
 - C:\usr\bin\dropbox

 - C:\usr\lang\cpp\gcc
 - C:\usr\lang\cpp\lib\qt_4_5_0
 - C:\usr\lang\python\py25

 - C:\usr\home\wrksp\cpp
 - C:\usr\home\doc
 - C:\usr\home\wrksp\svn

Viel leichter zu merken.

drby
quelle
5
Vista (Ultimate Edition mindestens) hat dies standardmäßig, aber für den durchschnittlichen Benutzer ausgeblendet. Halten Sie einfach die Umschalttaste gedrückt und klicken Sie mit der rechten Maustaste auf einen Ordner im rechten Explorer-Bereich. Daraufhin sollte "Open Command Window Here" (Befehlsfenster hier öffnen) angezeigt werden.
GAThrawn
@GAThrawn, ich habe Vista Home Premium und bestätige, dass ich diese Funktion auch dort gesehen habe.
Shivasubramanian A
Ist "C: \ usr \ bin \ 7zip" so viel schneller als "c: \ Programme \ 7zip"? In Bezug auf Tastenanschläge .. c: \ prog <tab> \ 7zip vs c: \ usr \ bin \ 7zip Vielleicht sind Programmdateien schneller zu bekommen?
Barlop
1

Persönlich denke ich, dass Sie, wenn Sie lernen möchten, die Eingabeaufforderung zu verwenden und diese nicht als erfreulich empfinden, wahrscheinlich nicht die Eingabeaufforderung verwenden müssen.

Sobald Sie eine CLI drücken müssen, werden Sie es nützlich und sogar angenehm finden. Wenn Sie versuchen, Ihre täglichen Aufgaben damit zu erledigen, schlagen Sie Ihren Kopf gegen eine Wand.

Sobald Sie mit der Eingabeaufforderung vertraut sind, können Sie Ihre täglichen Aufgaben dort migrieren, nur weil es einfacher ist, als immer nach der Maus zu greifen :)

Lachs
quelle
So wahr. Notwendigkeit schafft Vertrautheit.
J. Polfer,
1

Verwenden Sie Umgebungsvariablen.

Anstatt beispielsweise c: \ Dokumente und Einstellungen \ Benutzername einzugeben, können Sie einfach% userprofile% verwenden. Geben Sie für eine Liste der Standardumgebungsvariablen SET ein und drücken Sie die Eingabetaste an einer Eingabeaufforderung.

Machen Sie sich außerdem mit den Befehlen vertraut, die Ihnen zur Verfügung stehen - ich mag zwei Sites für sie: www.ss64.com und www.robvanderwoude.com

Sie können auch Batch-Scripting lernen - mit diesem können Sie häufig verwendete Aufgaben automatisieren.

Multiverse IT
quelle
1
  • Drücken Sie zum Einfügen in ein Befehlsfenster mit der Tastatur die Alt-Leertaste, e, p.
  • Um den letzten Befehl zu wiederholen, der mit dem Buchstaben "d" begann (zum Beispiel kann es sich um ein beliebiges Zeichen handeln), drücken Sie d und dann F8.

Der letztgenannte Tipp klingt vielleicht etwas undeutlich, aber wenn Sie viel Zeit in der Konsole verbringen, kann dies viel schneller und einfacher sein, als wenn Sie den Aufwärtspfeil oder F8 mehrmals drücken.

Stein
quelle
1

In diesem Thread gibt es einige großartige Tipps!

Meiner Meinung nach ist das Posten von CMD-Ersetzungen eher "Off Topic". Aber hier scheint es in Ordnung zu sein, also könnte ich ColorConsole zur Liste hinzufügen .

Die Oberfläche mit Registerkarten , das Menü " Bevorzugte Befehle" , " Kopieren / Ausschneiden & Einfügen" und der HTML-Export sind sehr nützliche Funktionen, die ich nicht mehr missen möchte.

ps: probier das mal im thread "must have Firefox Addons" aus: Lads, hol Opera, es hat die guten Sachen schon eingebaut! :)

Molly7244
quelle
0

Ich stimme dem Vorschlag zu, Powershell zu verwenden. Außerdem finde ich es unglaublich nützlich, Funktionen und Aliase einzurichten, um häufige Aufgaben auf weniger getippte Buchstaben zu reduzieren.

Um beispielsweise einen http-Link zu starten, habe ich dies in meinem Powershell-Profil eingerichtet:

function browse-url { param($url="http://www.google.com/"); (new-object -com shell.application).ShellExecute($url); }
set-alias -name "browse" -value "browse-url"

und dann browsetippe ich einfach , um google browse http://....zu öffnen oder einen bestimmten link zu öffnen

Ein weiteres Beispiel für das Auflisten von Dateien oder Verzeichnissen:

function lsa { param($path="."); Get-ChildItem -Force $path }
set-alias -name "la" -value "lsa"
set-alias -name "ll" -value "lsa"
function lsd { param($path="."); lsa $path | ? { $_.PSIsContainer } }
function lsf { param($path="."); lsa $path | ? { !$_.PSIsContainer } }
function lat { param($path="."); lsa $path | sort -property lastwritetime -descending }
function latr { param($path="."); lsa $path | sort -property lastwritetime }
function fi { param($pat,$root="."); gci -r $root | ? {$_.Name -match $pat} | % { $_.FullName } }

Und dann benutze ich lsa, um alle Elemente in einem Verzeichnis anzuzeigen, einschließlich versteckter Elemente. Verwenden Sie laoder llals noch kürzere Aliase.

Ich benutze, lsdum nur Ordner aufzulisten, lsfnur Dateien aufzulisten, nach der latletzten Schreibzeit geordnet und latrnach der Zeit in der entgegengesetzten Richtung aufzulisten.
fiwurde als einfacher Ersatz für den Unix- findBefehl eingerichtet, suche einfach rekursiv nach einem Dateinamen.

John Weldon
quelle
0

Installieren Sie den Windows Explorer-Ersatz Xplorer2 . Es enthält ein Eingabeaufforderungstool, mit dem alle Funktionen der Eingabeaufforderung neben der Windows-Benutzeroberfläche ausgeführt werden können, z. B. die Verwendung der Maus oder das Klicken mit der rechten Maustaste, um Funktionen zum Kopieren und Einfügen zu verwenden.

Screenshot der Eingabeaufforderung

Vinayak
quelle