Na przykład chcę dodać notepad ++ do mojej PATH, jednak katalog zawiera także uninstall.exe
kilka innych plików / plików wykonywalnych i nie chcę, aby „zanieczyszczały” moją ścieżkę. Czy mogę po prostu dodać ten notepad++.exe
?
Na przykład chcę dodać notepad ++ do mojej PATH, jednak katalog zawiera także uninstall.exe
kilka innych plików / plików wykonywalnych i nie chcę, aby „zanieczyszczały” moją ścieżkę. Czy mogę po prostu dodać ten notepad++.exe
?
Odpowiedzi:
Możesz dodać skrypt wsadowy do katalogu, który znajduje się na twojej ścieżce, który wygląda mniej więcej tak:
@echo off
:: Notepad++ execution
if [%1]==[-h] goto :HELP
if [%1]==[--help] goto :HELP
if [%1]==[/?] goto :HELP
goto :START
:START
start "" /i "%ProgramFiles(x86)%\notepad++\notepad++.exe" %*
goto :EOF
:HELP
echo -------------------------------
echo Notepad++ Command Argument Help
echo -------------------------------
echo Usage :
echo.
echo notepad++ [--help] [-multiInst] [-noPlugins] [-lLanguage] [-nLineNumber] [-cColumnNumber] [-xPos] [-yPos] [-nosession] [-notabbar] [-ro] [-systemtray] [-loadingTime] [fullFilePathName]
echo.
echo --help : This help message
echo -multiInst : Launch another Notepad++ instance
echo -noPlugins : Launch Notepad++ without loading any plugin
echo -l : Launch Notepad++ by applying indicated language to the file to open
echo -n : Launch Notepad++ by scrolling indicated line on the file to open
echo -c : Launch Notepad++ on scrolling indicated column on the file to open
echo -x : Launch Notepad++ by indicating its left side position on the screen
echo -y : Launch Notepad++ by indicating its top position on the screen
echo -nosession : Launch Notepad++ without any session
echo -notabbar : Launch Notepad++ without tabbar
echo -ro : Launch Notepad++ and make the file to open read only
echo -systemtray : Launch Notepad++ directly in system tray
echo -loadingTime : Display Notepad++ loading time
echo -alwaysOnTop : Make Notepad++ always on top
echo fullFilePathName : file name to open (absolute or relative path name)
echo.
goto :EOF
:EOF
Możesz to nazwać notepad++.cmd
. Sekcja pomocy pozwala łatwo uzyskać informacje na temat przełączników.
Umieszczam wszystkie takie skrypty i programy wiersza poleceń w katalogu dodawanym do %PATH%
:
C:\Users\Public\Command\
... i ten katalog jest synchronizowany ze wszystkimi komputerami i maszynami wirtualnymi.
Utwórz plik wsadowy z zawartością podobną do następującej:
@"C:\Program Files\Git\bin\git.exe" %*
To powinno być zapisane jako .bat
plik, na przykład git.bat
w katalogu, który znajduje się w twoim PATH
.
@
pomija echo polecenia dla wywołującej powłoki. Cytaty ""
zapobiegają interpretowaniu białych znaków jako ograniczników argumentów. %*
wkleja wszelkie argumenty do pliku wsadowego, zamiast tego do cytowanego pliku wykonywalnego.
Możesz teraz wywołać plik wykonywalny, używając wcześniej części nazwy pliku wsadowego .bat
. W moim przypadku git
.
Referencje:
start git
raczej to zrobić niż zrobić za nich. Skrypt batch lepiej działać, jeśli exec
byłyby do żądanego procesu, ale nie jest to możliwe w systemie Windows: serverfault.com/questions/315077/... . Mógłbym call
iść do przodu, ale byłoby to pedantyczne i w większości bezcelowe.
Przeciągnij skrót notepad++.exe
do C:\Windows\System32
.
Alternatywnie, jak sugeruje @Synetech Inc., możesz umieścić skróty w osobnym katalogu (np. C:\Shortcuts
), A następnie dodać ten katalog do %PATH%
:
setx PATH "%PATH%;C:\Shortcuts"
Jak wskazują niektóre komentarze, działa to tylko z okna dialogowego Uruchom. Aby uzyskać skróty do uruchamiania z wiersza polecenia, musisz dodać rozszerzenie skrótu (.LNK) do zmiennej środowiskowej PATHEXT.
setx PATHEXT %pathext%;.LNK
Referencje:
Jak mogę łatwo uruchamiać aplikacje za pomocą okna dialogowego Uruchom?
Shortcuts
.
setx
. Nie używasz znaku równości, a IIRC, musisz zawrzeć całą ścieżkę w cudzysłowach, jeśli prąd %PATH%
ma w niej spacje (co będzie).
SETX
używa tyldy dla zmiennych zamiast procentów, aby uniknąć ich rozszerzenia? Wiem, że niektóre narzędzia do ustawiania env-var nie…
Run As
okna dialogowego, nie działało z wiersza polecenia.
Wystarczy utworzyć dowiązanie symboliczne za mklink
pomocą folderu w ścieżce.
np. (w wierszu polecenia administratora)
mklink "C:\Users\Me\Documents\Paths\np.exe" "C:\Program Files (x86)\Notepad++\notepad++.exe"
Klucz rejestru Ścieżek aplikacji robi dokładnie to: ustaw ścieżkę do notatnika ++. Exe na „\ program files \ ...”, a będziesz mógł uruchomić go z Start-Run, cmd, ... tak jak każdy plik wykonywalny z katalog w% PATH%.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
Odniesienie: /programming/4822400/register-an-exe-so-you-can-run-it-from-any-command-line-in-windows
Nie podobało mi się żadne z przedstawionych tutaj rozwiązań, więc spróbowałem czegoś innego.
Zainstaluj rozszerzenie powłoki łącza (więcej informacji tutaj )
Utwórz folder, w którym będą przechowywane wszystkie skróty, jak sugeruje Marteen, i dodaj go do swojego %PATH%
. Stworzyłem C:\Shortcuts
i użyłem Rapid Environment Editor, aby dodać go do mojej ŚCIEŻKI.
Kliknij prawym przyciskiem myszy plik, który chcesz dodać do ścieżki (w Eksploratorze), a następnie kliknij „Wybierz źródło linku”
Kliknij prawym przyciskiem myszy właśnie utworzony folder i kliknij Drop As > Symbolink Link
.
Zmień nazwę łącza symbolink, jeśli chcesz.
to jest to! Powinieneś mieć teraz dostęp do swojego programu za pomocą wiersza polecenia. Jeśli właśnie dodałeś nowy folder do PATH, będziesz musiał ponownie uruchomić cmd.exe lub Cmder lub ConEmu lub cokolwiek innego. Następnie możesz dodawać nowe programy bez ponownego uruchamiania.
start
aby tego uniknąć, jak pokazano w mojej odpowiedzi.