在 Powershell 中使用开源命令

在 Windows 上设置您的路径,以便您可以使用开源命令。
4 位读者喜欢这篇文章。
bash logo on green background

Opensource.com

当您在操作系统上启动应用程序时,操作系统需要使用某些代码库和实用程序才能运行该应用程序。操作系统知道如何找到这些库和实用程序,因为它有一个系统路径,它是许多应用程序需要的常用共享数据的映射。每个操作系统都有这个路径,但用户通常不会意识到它,因为他们通常不需要关心它。但是,当您开始编码或使用特殊的网络实用程序或命令时,您可能会关心您自己的 PATH 变量。

PATH 变量使您可以将命令保存到一个一致的位置,并使用命令提示符或更强大的(和开源的)Powershell 从系统中的任何位置使用它们。

例如,假设您想在 Windows 上安装开源应用程序 pscp.exe,它是著名的 PuTTY OpenSSH 客户端的命令行界面。您可以将其下载到您的硬盘驱动器,但是您的命令行如何知道它存在?好吧,起初,它不知道
 

PS> pscp
pscp: The term 'pscp' is not recognized as the name of a cmdlet, script file, or operable program. 
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

如果您正在使用开源命令行,例如 Powershell 或 Cmder,您会收到一个有用的错误提示,表明这可能是您的路径(或缺少路径)的问题。以下是解决此问题的方法。

设置 PATH

  1. 首先,在您的桌面上创建一个名为 `App` 的文件夹。

  2. 接下来,右键单击屏幕左下角的 Windows 菜单,然后选择“系统”。

Image of the Windows menu system.

(Alan Smithee, CC BY-SA 4.0)

  1. 在出现的“系统”窗口中,单击窗口左侧的“高级系统设置”链接。

  2. 在出现的“系统属性”窗口中,单击窗口底部的“环境变量”按钮。

Image Windows system enviroment variables.

(Alan Smithee, CC BY-SA 4.0)

  1. 在“环境变量”窗口中,单击“用户变量”面板下的“新建”按钮。
Image of new Windows enviroment variables.

(Alan Smithee, CC BY-SA 4.0)

  1. 在出现的对话框中,在“变量名”字段中输入 PATH,在“变量值”字段中输入 %USERPROFILE\Desktop\App。单击“确定”按钮以保存更改。
Image of Windows path set.

(Alan Smithee, CC BY-SA 4.0)

将您希望从命令提示符访问的命令和应用程序放在 Desktop\Apps 中,Powershell、Cmder 甚至 Cmd 都会找到它们
 

PS> pscp –version
pscp: Release 0.XY
Build platform: 64-bit x86 Windows
PS> 

自动 PATH 设置

许多应用程序在安装过程中会自动添加到系统路径。但是,并非所有应用程序都这样做,可能是因为您在安装过程中错过了复选框,或者是因为应用程序开发人员希望您自己添加它。当自动路径失败时,您现在知道如何创建自己的路径。

Avatar
我注重我的隐私。

3 条评论

由于这里的重点是“命令”,我怀疑一些读者会很高兴听到他们可以从命令行设置系统环境变量,而不仅仅是通过图形界面。请参阅 `setx` 命令,该命令自 Windows XP 起可用。使用它的 /m 参数(自 Windows 7 起)将变量设置为系统环境变量——尽管奇怪的是这不会在当前命令窗口中生效。更多信息请访问 https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/setx。

还有一个可用的 powershell cmdlet,SetEnvironmentVariable。

这里发生了什么?Opensource.com 过去是关于,嗯,开源的。为什么这里会出现关于专有软件的文章?

要在非开源 Windows 操作系统上的开源 Powershell 应用程序中使用开源 `pscp` 应用程序,您需要知道如何将其添加到系统的路径中。本文演示了这一点。

(我们确实尝试在 ReactOS 上演示相同的事情,但过程截然不同。)

回复 作者 William Peckham

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.