将 .exe 添加到默认路径而不添加目录

将 .exe 添加到默认路径而不添加目录

例如,我想将 notepad++ 添加到我的 PATH,但该目录还包含uninstall.exe其他几个文件/可执行文件,我不希望它们“污染”我的路径。我可以只添加一个notepad++.exe吗?

答案1

您可以将批处理脚本添加到路径中的目录中,如下所示:

@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\ ...并且该目录同步到所有计算机和虚拟机。

答案2

创建一个批处理文件,内容如下:

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

这应该保存为一个.bat文件,例如git.bat保存在您的PATH.

@禁止将命令回显到调用的 shell。引号""可防止将空格解释为参数分隔符。%*将所有参数粘贴到批处理文件中,而不是引用的可执行文件中。

现在,您可以使用批处理文件名中 之前的部分来调用可执行文件.bat。在我的例子中是git

参考:

答案3

将快捷方式拖拽notepad++.exeC:\Windows\System32


或者,按照@Synetech inc. 的建议,您可以将快捷方式放在单独的目录中(例如C:\Shortcuts),然后将该目录添加到%PATH%

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

正如一些评论所指出的,这只能在运行对话框中使用。为了从命令提示符启动快捷方式,您需要将快捷方式扩展名 (.LNK) 添加到 PATHEXT 环境变量中。

setx PATHEXT %pathext%;.LNK

参考:

如何使用运行对话框轻松启动应用程序?

答案4

App Paths 注册表项的作用正是如此:将 notepad++.exe 的路径设置为“\program files\...”,您将能够从“开始”-“运行”、“cmd”等启动它,就像 %PATH% 目录中的任何可执行文件一样。

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

参考:https://stackoverflow.com/questions/4822400/register-an-exe-so-you-can-run-it-from-any-command-line-in-windows

相关内容