如何安装程序,使其可以从命令行访问而不pipe位置?

我希望能够从窗口中的命令行键入一些可执行文件,并运行,无论我在文件所在的文件夹。

如何设置或安装它,以便我可以键入someProgram并让它运行,而不pipe我的文件夹位置?

打开您的系统属性(右键单击我的电脑 – >属性)单击高级选项卡和环境variablesbutton。 在系统variables部分查找path。 然后将程序放在该path中列出的目录之一中,或将安装目录添加到列表中。 后者可能是更好的select

您可以将该程序目录的path添加到PATH环境variables中。

你需要设置你的PATH环境variables。 您可以在“高级”选项卡的“系统”图标下的“控制面板”中find它。 点击“环境variables”button。 第二个对话框出现两个部分。 最上面的一个显示的是整个系统的特定variables,最底层的variables。 如果你想让它影响到你,那就把改变放在那里,否则放在最下面。

这是在每个常见的操作系统中,PATHvariables的目的。

如果你想绑定到windows,那么有一个更好的方法可以做到这一点:我曾经为它设置了很多程序,所以我可以通过Win-R启动我的程序(比如Start- >运行或在命令行上),input可执行文件名称的几个字母,利用MRU-List并启动应用程序。

将这些可执行文件的所有path添加到path的缺点是会减慢命令的执行速度:每次调用程序时,都必须扫描所有path。 因此,PATHvariables只能用于包含多个可执行文件的目录,如“bin”或“tools”目录。

更好的办法是在registry中创build一个正确的条目,许多程序安装者自己做,顺便说一句。

 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ 

是去的地方。 你会看到很多条目。 AFAIK,这也将允许有两个不同的命令启动相同的程序,但在不同的工作目录,或不同的属性。

不幸的是,我还没有find任何来自Microsoft / MSDN的信息,例如RunAsOnNonAdminInstallBlockOnTSNonInstallMode 。 我们只能推测这一点。

这也可以让你“重命名”程序,而不需要实际重命名可执行文件(如果你更新它或者它是一个更大的套件的一部分,可能会遇到麻烦),如果切换到另一个最喜欢的应用程序任务。 当我input“wmplayer”和“ACDsee32”出现habbit /错误时,我有了vlc和IrfanView。

这是我发现的最详尽的。

我想给这个问题增加一个现代的答案(SO站点的长尾哲学)。

PowerShell是Windows上的现代shell。 Chocolatey Nuget是一个命令行应用程序。 它的标语是“apt-get for Windows”。

Chocolatey使用的模式(从包pipe​​理器为其他平台克隆):

一个程序及其所有EXE / DLL被安装到C:\Program Files(x86)\MyCompany\MyApp 。 但是只有一个EXE被使用, App.EXE 。 所以巧克力不会将...\MyCompany\MyApp添加到PATH。 有一个文件夹C:\chocolatey\bin ,每个程序都有一个MyApp.bat文件。 每个bat文件都有一行可以运行EXE的完整path:

"C:\Program Files(x86)\MyCompany\MyApp\App.EXE" %*

即使你没有巧克力,我也会推荐相同的模式。 创build%USERPROFILE%\Documents\bin文件夹,并创build.bat文件。 在PowerShell中,您可以使用Set-Alias来执行此操作,将其添加到您的默认profile.ps1文件中。