Ich muss in diesem Fall eine negative Antwort geben - die Verwendung von Leerzeichen in einem Doskey-Namen ist unmöglich. Doskey wurde für die Eingabeaufforderung (cmd) erstellt. Das Konzept ist ziemlich einfach.
Dies ist meiner Meinung nach unmöglich, da:
- Bei einem doskey-Befehl, z. B.
doskey a b=ab
, ist für eine ungültige Option "a" erforderlich - Der Befehl doskey akzeptiert keine Anführungszeichen um den Makronamen.
Hier sind einige Tests, die ich durchgeführt habe:
Wie Sie sehen, werden einige Sonderzeichen akzeptiert, jedoch keine Leerzeichen.
Doskey ist auch ohne Leerzeichen im Makronamen ein altes DOS-Programm und kann nur schwer in PowerShell ausgeführt werden. Es steht im Konflikt mit dem PSReadLine
Modul, das auf den Eingabefunktionen der systemeigenen Konsole beruht. Ich habe das getestet:
Wie Sie sehen können, müssen Sie zwei zusätzliche Aktionen ausführen:
- Den Befehl ausgeben
Remove-Module PSReadLine
- Fügen Sie dem Befehl doskey den Parameter hinzu
/exename=powershell.exe
Wenn beide abgeschlossen sind, wird der Befehl korrekt ausgeführt und gibt den richtigen Fehler aus.
Mein bester Rat ist, doskey nicht in PowerShell zu verwenden. Doskey ist alt und PowerShell ist neu und sie können nur schwer zusammen verwendet werden. Ich glaube wirklich nicht, dass doskey so nützlich ist, um unersetzlich zu sein.
Versuchen Sie, eine andere Lösung für Ihre häufig verwendeten Befehle zu finden. Speichern Sie die Befehle beispielsweise in ausführbaren Dateien wie .ps1
oder .cmd
oder .bat
in einem Ordner, den Sie dem PATH hinzufügen würden.