Додавання .exe до шляху за замовчуванням без додавання каталогу


22

Наприклад, я хочу додати свій блокнот ++ до свого PATH, проте в каталозі також є uninstall.exeкілька інших файлів / виконуваних файлів, і я не хочу, щоб вони "забруднювали" мій шлях. Чи можу я просто додати одну notepad++.exe?

Відповіді:


17

Ви можете додати пакетний сценарій до каталогу, який знаходиться на вашому шляху, який виглядає приблизно так:

@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

Ви можете назвати його notepad++.cmd. Довідковий розділ дозволяє легко отримувати інформацію про вимикачі.

Я поміщаю всі такі сценарії та програми командного рядка в каталог, який додається до %PATH%: C:\Users\Public\Command\ ... і цей каталог синхронізується з усіма комп'ютерами та віртуальними машинами.


8

Створіть пакетний файл із таким вмістом:

@"C:\Program Files\Git\bin\git.exe" %*

Це слід зберегти як .batфайл, наприклад, git.batу каталозі, який знаходиться у вашомуPATH .

@пригнічує відлуння команди до оболонки, що викликає. Цитати ""перешкоджають інтерпретації пробілів як розмежувачі аргументів. %*вставляє будь-які аргументи в пакетний файл, а замість цього - до цитованого виконуваного файлу.

Тепер ви можете викликати виконуваний файл, використовуючи частину імені пакетного файлу раніше .bat. У моєму випадку git.

Список літератури:


Для багатьох програм, які зависають CMD, поки ви не закриєте її. Щоб startуникнути цього, потрібно, як показано в моїй відповіді.
парадороїд

@paradroid: Дякую, але це стандартна поведінка терміналу залишатися прив’язаною до батьків, якщо не запитують. Користувач повинен робити це, start gitа не робити це для них. Пакетний сценарій діяв би краще, якщо він зайнявсяexec запитуваним процесом, але це неможливо в Windows: serverfault.com/questions/315077/… . Я міг би податися, callале це було б педантично і здебільшого безглуздо.
Метт Столяр

3

Перетягніть ярлик notepad++.exeдо C:\Windows\System32.


Крім того, як запропонував @Synetech inc., Ви можете помістити ярлики в окремий каталог (наприклад C:\Shortcuts), а потім додати цей каталог до %PATH%:

setx PATH "%PATH%;C:\Shortcuts"

Як зазначають деякі коментарі, це працює лише з діалогового вікна Запуск. Для того щоб отримати ярлики для запуску з командного рядка, вам потрібно додати розширення ярлика (.LNK) до змінної середовища PATHEXT.

setx PATHEXT %pathext%;.LNK

Список літератури:

Як легко запускати програми за допомогою діалогового вікна "Запустити"?


1
Це краще рішення (на відміну від пакетного файлу); створити ярлик до нього (у різному) каталозі на шляху - не забруднюйте каталоги Windows! У мене спеціально для цієї мети папка називається Shortcuts.
Synetech

1
Це неправильний синтаксис для setx. Ви не використовуєте знак рівності, а IIRC, вам потрібно скласти весь шлях у лапки, якщо в поточному %PATH%є пробіли (які вони будуть).
парадороїд

І не SETXвикористовує тильди для змінних замість відсотків, щоб уникнути їх розширення? Я знаю, що якийсь інструмент налаштування env-var робить…
Synetech

2
Це не працює. За замовчуванням (я перетягую git.exe), "git - ярлик", перейменування цього на комбінації "git.exe", "git", "git.cmd" тощо не впливає. Він не визнає ярлик.
Метт Столяр

3
Це працює лише при виклику з Run Asдіалогового вікна, він не працює з командного рядка.
Метт Столяр

1

Просто створіть символічне посилання, використовуючи mklinkв папці Шлях.

наприклад (у командному рядку адміністратора)

mklink "C:\Users\Me\Documents\Paths\np.exe" "C:\Program Files (x86)\Notepad++\notepad++.exe"

0

Ключ реєстру App Paths робить саме це: встановіть шлях до блокнота ++. Exe до "\ програмних файлів \ ...", і ви зможете запустити його з Start-Run, cmd, ... так само, як і будь-який виконуваний файл з каталог у% PATH%.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths

Довідка: /programming/4822400/register-an-exe-so-you-can-run-it-from-any-command-line-in-windows


Це не зробить його виконуваним з cmd - лише з запуску запуску, або в cmd вам доведеться префіксувати його "start", як у "start myapp.exe"
Tahir Hassan

У командному рядку цього, за згодою, бракує можливості розпізнати цю змінну. PowerShell це визнає. Це рішення, що ще важливіше, стосується лише каталогу, а значить, поза темою.
Тодд Партрідж

0

Мені не сподобалося жодне з представлених тут рішень, тому я спробував щось інше.

  1. Встановити розширення оболонки посилань (детальніше тут )

  2. Створіть десь папку, щоб зберігати всі ваші ярлики, як пропонує Мартен, і додайте їх до своїх %PATH%. Я створив C:\Shortcutsі використав Rapid Environment Editor, щоб додати його до моєї PATH.

  3. Клацніть правою кнопкою миші файл, який ви хочете додати до свого шляху (в Провіднику) та натисніть "Вибрати джерело посилання"

  4. Клацніть правою кнопкою миші в створеній вами папці та натисніть Drop As > Symbolink Link.

  5. Перейменуйте посилання для символіки, якщо хочете.

Це воно. Ви повинні мати доступ до своєї програми через командний рядок зараз. Якщо ви щойно додали нову папку до свого PATH, вам доведеться перезапустити cmd.exe або Cmder або ConEmu або все, що ви використовуєте. Після цього ви можете додавати нові програми без перезавантаження.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.