Wie kann ich in der Windows-Eingabeaufforderung Befehls-Aliase erstellen, wie ich es tun würde bash
?
Ich habe es doskey
in einem Forenthread herausgefunden , damit ich etwas machen kann wie:
doskey ls=dir /b
... und jetzt verhält sich der Befehl ls
etwas ähnlicher wie ls
unter Unix. (Ich tippe ls
so oft ein cmd
, dass es nicht mal lustig ist.)
Aber wie bringe ich das dazu, zwischen den Sitzungen zu bleiben? Es verschwindet, wenn ich das nächste Mal öffne cmd.exe
. (Gibt es so etwas .bash_profile
?)
windows
shell
command-line
alias
Benjamin Oakes
quelle
quelle
Antworten:
cygwin kann in diesem Fall verwendet werden, obwohl dies keine themenbezogene Antwort ist.
http://www.cygwin.com/ CygWin
Download: http://cygwin.com/setup.exe
Um in Windows einfach darauf zuzugreifen, können Sie c: \ cygwin \ bin in Ihren Pfad einfügen.
Beachten Sie, dass es einige Befehle gibt, die nicht mit der Windows-Software übereinstimmen, z. B. find (1) vs find.exe - find (1) listet alle Dateien und Unterverzeichnisse auf, während find.exe wie grep funktioniert.
Eine andere Option ist der Zugriff
Auschecken
für mehr Detailsquelle
Es ist ziemlich einfach, permanente Aliase in der Windows-Eingabeaufforderung mithilfe der
@DOSKEY
Befehls- undHKCU\Software\Microsoft\Command Processor
Autorun-Option einzurichten.Schnelle Schritt-für-Schritt-Anleitung:
Alias.bat
. Kopieren Sie den folgenden Text, und fügen Sie ihn ein. TIPP: Ich empfehle, einenC:\Bin
Ordner für alle Befehlszeilentools zu erstellen .HKEY_CURRENT_USER\Software\Microsoft\Command Processor
.Autorun
und legen Sie den Wert auf den absoluten Pfad derAlias.bat
Datei fest.Diese Batchdatei wird jedes Mal ausgeführt, wenn Sie eine Eingabeaufforderung öffnen.
Inhalt von Alias.bat
Jetzt können Sie
alias
(ieDOSKEY /MACROS
) eingeben, um die aktuelle Liste der Aliase / Makros anzuzeigen.Sie können nur für die aktuelle Sitzung neue Aliase hinzufügen
alias name=command
.quelle
@DOSKEY
Befehl beim Beenden von Autodesk Maya 2010 einen Absturz verursacht. Wahrscheinlich gibt es eine Problemumgehung, z. B. die Überprüfung, ob der übergeordnete Prozess Maya ist.Auch eine Art Off-Topic -
Verwenden Sie PowerShell anstelle der
cmd.exe
Befehlszeile. Die gute Nachricht ist, dass PowerShell.bash_profile
genau wie diecmd.exe
Befehlszeile ausgeführt wird. Es kommt mit einer eingebauten Alias-Generierungsfunktion. Die schlechte Nachricht ist, dass es eine gewisse Lernkurve gibt, wenn Sie etwas Komplizierteres als einfachecmd.exe
Befehle ausführen möchten .Übrigens
ls
wird als ein Alias von "dir
direkt ab Werk" definiert.quelle
Es gibt einen Registrierungseintrag, unter
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun
dem Sie einen Befehl ausführen können, wenn Sie eine cmd-Eingabeaufforderung starten. Dies beinhaltet eine Batch-Datei.quelle
Ich empfehle, DOS-Versionen dieser Befehle direkt über diesen Link zu installieren .
Einfach, leicht, effizient usw. Ich benutze es jetzt schon eine Weile. Macht mich glücklich! Cygwin ist ein bisschen groß für das Wesentliche, was ich brauche.
quelle
Versuchen Sie, sie in autoexec.bat abzulegen. Ich bin nicht sicher, du musst es versuchen. Setzen Sie autoexec.bat selbst in C: \
quelle
Fügen Sie Ihre Aliase in eine Datei mit dem Namen alias.cmd ein und ergänzen Sie
/K \path\to\alias.cmd
die Verknüpfung, die Sie zum Starten verwendencmd.exe
.Referenz
quelle
Ich werde für einen Moment ein Nekromant sein und diesen Faden von den Toten erheben. Die Antwort war für mich nicht zufriedenstellend. Ich wusste, dass es einen besseren Weg gibt. Ich versuchte, Fledermausfeilen zu erstellen und einzuschließen, und versuchte herauszufinden, wie man den Spaghetti-Ball zum Laufen bringt. Sowieso zurück zu Google ging ich ..
Ich habe das auch gefunden. Wie man neue DOS-Alias / -Befehle hinzufügt und eine Tastenkombination für ein Admin-DOS erstellt. Es funktioniert großartig, es sollte unter 98-7 funktionieren (irgendwie witziges Nummerierungssystem, aber hey, es ist Windows). Ich hoffe es hilft denen in diesem Thread und denen, die Google auf diese Weise sendet.
Dieser Weg ist nicht so einfach wie Alias und auch nicht Doskey. Einmal eingerichtet ist dies ungefähr der gleiche Aufwand.
Ich werde auch hinzufügen, dass Teile davon, die mit Dennis Williamsons Antwort verschmolzen sind, viel besser sind. Sie können Shell-Umgebungen für mehrere Versionen derselben Anwendung haben, z. B. PHP 4 für Ihre alten Skripte und PHP 5 für Ihren Testserver.
Jedenfalls hat das für mich viel besser geklappt.
quelle
Lösung durch Festlegen einer PATH-Umgebung
Erstelle eine ls.c Datei
Geben Sie den folgenden Code ein
in ls.c und kompiliere die Datei:
Es wird eine ausführbare Datei ls.exe erstellt
Erstellen Sie ein Verzeichnis und nennen Sie es cmdline_tools
Kopieren Sie ls.exe in das Verzeichnis
Legen Sie den Pfad des Verzeichnisses in der PATH-Umgebung fest. [Kopieren Sie den Pfad des Verzeichnisses und fügen Sie ihn in den PATH ein.]
Öffnen Sie Ihre cmd.exe und geben Sie
Es funktioniert als dir Befehl. Sie können auf die gleiche Weise auch für andere Befehle vorgehen. Wenn nicht, lass es uns wissen.
quelle
CMD mit Aliasen / Funktionen von doskey und bashrc (von cygwin> bash), Schrägstriche funktionieren auch in cmd (ab win7)
Erstellen Sie eine Verknüpfung zu cmd, um cmdrc.cmd zu verwenden
cmd -a "/ k% HOME% \ cmdrc.cmd c:"
2 C:> cat% HOME% / cmdrc.cmd
quelle