552 Stimmen

< h1 >Aliase im Windows-Befehlszeilenfenster< /h1 >

Ich habe notepad++.exe zu meinen Umgebungsvariablen hinzugefügt.

Jetzt öffnet notepad++.exe filename.txt in der Eingabeaufforderung die Datei filename.txt. Aber ich möchte nur np filename.txt eingeben, um die Datei zu öffnen.

Ich habe versucht, DOSKEY np=notepad++ zu verwenden. Aber es bringt nur ein bereits geöffnetes Notepad++ in den Vordergrund, ohne die Datei zu öffnen. Wie kann ich erreichen, dass es die Datei öffnet?

5voto

Alex Perry Punkte 305

Erweitern von roryhewitt Antwort.

Ein Vorteil der Verwendung von .cmd-Dateien gegenüber DOSKEY besteht darin, dass diese "Aliasnamen" dann in anderen Shells wie PowerShell oder WSL (Windows-Subsystem für Linux) verfügbar sind.

Der einzige Haken bei der Verwendung dieser Befehle in bash ist, dass möglicherweise etwas mehr Einrichtung erforderlich ist, da Sie möglicherweise vor dem Aufrufen Ihres "Alias" einige Pfadmanipulationen durchführen müssen.

Zum Beispiel habe ich vs.cmd, das mein "Alias" für das Bearbeiten einer Datei in Visual Studio ist

@echo off
if [%1]==[] goto nofiles
start "" "c:\Program Files (x86)\Microsoft Visual Studio 
11.0\Common7\IDE\devenv.exe" /edit %1
goto end
:nofiles
start "" "C:\Program Files (x86)\Microsoft Visual Studio 
11.0\Common7\IDE\devenv.exe" "[PFAD ZU MEINEM NORMALERWEISEN SLN]"
:end

Das öffnet VS (in diesem Fall VS2012 - aber passen Sie es nach Ihrem Geschmack an) mit meinem "normalen" Projekt ohne eine angegebene Datei, aber wenn eine Datei angegeben ist, wird versucht, eine laufende VS-Instanz anzuhängen und die Datei "innerhalb dieses Projekts" zu öffnen, anstatt eine neue Instanz von VS zu starten.

Um dies von bash aus zu verwenden, füge ich dann eine zusätzliche Ebene der Indirektion hinzu, da "vs Myfile" nicht immer funktionieren würde

alias vs='/usr/bin/run_visual_studio.sh'

Das passt die Pfade an, bevor die vs.cmd aufgerufen wird

#!/bin/bash
cmd.exe /C 'c:\Windows\System32\vs.cmd' "`wslpath.sh -w -r $1`"

Auf diese Weise kann ich einfach

vs SomeFile.txt

In einer Eingabeaufforderung, Power Shell oder bash ausführen und es wird in meinem laufenden Visual Studio zum Bearbeiten geöffnet (was mir einfach das Leid erspart, mit VI-Befehlen oder ähnlichem umgehen zu müssen, wenn ich gerade stundenlang in VS bearbeitet habe).

3voto

Aarav Prasad Punkte 71

Erstellen Sie überall auf Ihrem System einen neuen Ordner, der für Aliase bestimmt ist. Erstellen Sie eine neue Datei mit dem Namen, den Sie dem Alias geben möchten, mit der .cmd-Erweiterung. Schreiben Sie alle Befehle in die Datei, wie zum Beispiel

cd /D D:\Ordner
g++ -o run etwas.cpp

Kopieren Sie den Pfad des Ordners.

Gehen Sie zu Einstellungen > System > Info > Erweiterte Systemeinstellungen > Umgebungsvariablen...

Finden Sie jetzt die Variable Path unter dem Abschnitt Systemvariablen. Klicken Sie einmal darauf und dann auf Bearbeiten. Klicken Sie nun auf Neu und fügen Sie den kopierten Text ein.

Klicken Sie auf OK, OK und OK. Starten Sie Ihre Powershell/cmd-Eingabeaufforderung neu und voilà, Sie haben Ihren persistenten Alias! Sie können denselben Ordner auch verwenden, um andere Aliase zu erstellen, ohne die Variable Path erneut ändern zu müssen!

2voto

BarathVutukuri Punkte 1255

Diese Lösung ist nicht ideal, aber erfüllt ihren Zweck in manchen Situationen.

Erstelle zunächst einen Ordner und füge ihn dem Systempfad hinzu. Gehe zum ausführbaren Programm, für das du ein Alias erstellen möchtest. Klicke mit der rechten Maustaste und wähle "Desktop senden" (Verknüpfung erstellen). Benenne die Verknüpfung in einen beliebigen Alias-Namen um. Nimm nun die Verknüpfung und platziere sie in deinem Ordner.

Vom Ausführen-Fenster aus kannst du direkt den Alias-Namen eingeben und das Programm wird für dich geöffnet. Aber vom Eingabeaufforderungsfenster aus musst du .lnk anhängen und die Eingabetaste drücken, dann wird das Programm geöffnet.

1voto

Shravan Punkte 141

Da du bereits notepad++.exe in deinem Pfad hast. Erstelle eine Verknüpfung in diesem Ordner mit dem Namen np und zeige sie auf notepad++.exe.

1voto

Zibri Punkte 7918

Meine schnelle und einfache Lösung besteht darin, eine BAT-Datei in einem Verzeichnis hinzuzufügen, das bereits im PATH enthalten ist.

Beispiel:

@ECHO OFF
doskey dl=aria2c --file-allocation=none $*
aria2c --file-allocation=none %**

Das erste Mal, wenn Sie "dl" ausführen, wird die Bat-Datei ausgeführt, aber ab dem zweiten Mal wird das Alias verwendet.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X