Windows-CMD: Wie erstelle symbolischen link auf die ausführbare Datei?
Mein Ziel ist das hinzufügen von ein paar ausführbare Dateien auf meinem PFAD (Z. B. chrome), so dass ich anrufen kann
> chrome
aus der Eingabeaufforderung und starten Sie Chrome.
Ich weiß, ich könnte hinzufügen von Chrom enthaltenden Verzeichnis auf meinem Weg (set PATH=%PATH%<chrome_path_here>;
), aber da habe ich ein paar executables möchte ich noch hinzufügen, ich würde lieber eine neue bin-Verzeichnis enthält symbolische links zu den eigentlichen Dateien und einfach hinzufügen, dass einzelne Verzeichnis auf meinem WEG.
Die Chrome-EXE-Datei befindet, an
C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
Also versuchte ich
> mklink chrome.exe "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
Erfolgreich erstellt eine symbolische Verknüpfung für die Dateien (so in der Ausgabe, und nach Prüfung mit > dir
). Ich weiß, dass mein WEG richtig eingerichtet ist, b/c wenn ich > where chrome
es findet meinen neuen symbolischen link.
Jedoch, wenn ich versuche, führen Sie chrome mit meinem neuen link, passiert nichts. Ein neues leeres Fenster erscheinen soll, aber nichts passiert. Keine Fehlermeldung in der Eingabeaufforderung oder nichts.
Was mache ich falsch? Bin ich Missverständnis symlinks in Windows? Dies ist der Ansatz, den ich verwenden in Linux die ganze Zeit, aber ich bin neu in der Windows Cmd.
Dank!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Meisten Programme werden nicht ausgeführt aus anderen Orten als Sie Speicherort installieren - das ist genau das, was passiert, wenn Sie versuchen, führen Sie es von symlink.
Wäre es viel einfacher zu erstellen CMD/BAT Dateien in diesem Ordner mit passenden Namen, die das starten von Programmen aus Orten, die Sie wollen:
Mit Windows 7 ich bestätige, dass symlinks funktionieren nicht, werden einfach ignoriert-wie berichtet-in der ursprünglichen Frage.
Als Harry stellt in seinem Kommentar, Verknüpfungen tun Arbeit, und für mich sind einfacher, leichter und schneller als schreiben ein separates Skript für jeden neuen Befehl, den ich aktivieren möchten unter CMD.
Er besagt, dass Sie müssen hinzufügen .lnk zu Ihrem PATHEXT-variable, um dies zu tun. Ich versichere, dass das funktioniert, und mit .lnk Hinzugefügt PATHEXT ich kann einfach den Namen eingeben, der Teil des Kontextmenü, um den Befehl auszuführen. Zum Beispiel, wenn meine Verknüpfung mit dem Namen "sublime.lnk" und PATHEXT umfasst .lnk", " ich kann führen Sie die Verknüpfung mit dem einfachen Befehl "erhabenen". Schön!
Als eine alternative, die ich gefunden, dass PATHEXT müssen nicht geändert werden, wenn ich einfach den vollen Namen der Verknüpfung, einschließlich der .lnk, bei meinem CMD-prompt. E. g., Ich erstellte eine Verknüpfung mit dem Namen "sublime.lnk" unter %HOMEPATH%/bin, die auf "C:\Program Files\Sublime Text 2\sublime_text.exe".
Nun Legend, %HOMEPATH%\bin in meine %PATH%, und ich kann erhaben über den Befehl "erhaben.lnk".
Beiden oben genannten sind die beste Möglichkeit, die ich kenne, die Zugang zu verschiedenen Befehle, die von Windows' Dateisystem von einer CMD-Eingabeaufforderung. Ich bin kein Windows-Experte, obwohl, und freuen uns über eine bessere oder mehr standardisierte Lösung für dieses problem.
P. S.: ich habe gerade herausgefunden, die harte Weise, dass Sie müssen sicherstellen, dass die "Start in:" Eigentum einer Verknüpfung, die Sie verwenden, auf diese Weise wird ausgeblendet, oder Ihr Programm wird nicht starten, in das Verzeichnis rufen Sie das Kontextmenü aus.
P. P. S.: Auf ein zugehöriger Hinweis entdeckte ich, wie führen Sie Windows Explorer (oder dessen Ersatz) auf das Verzeichnis Ihres CMD-Sitzung angemeldet ist:
start .
.