有没有办法改变Powershell';基于当前工作目录的环境路径?

有没有办法改变Powershell';基于当前工作目录的环境路径?,powershell,Powershell,因此,我有一个代码库,在脚本文件夹下有一些实用程序脚本。每当我想运行实用程序脚本时,我必须键入: ./scripts/someScript.ps1 someParam 是否有办法设置env:path,以便只需键入: someScript someParam 但只有当工作目录是本地存储库的一部分时?例如,当我在时,它会起作用: c:\code\project1 c:\code\project1\source 但不是在 c:\code c:\code\project2 谢谢 正如@graim

因此,我有一个代码库,在脚本文件夹下有一些实用程序脚本。每当我想运行实用程序脚本时,我必须键入:

./scripts/someScript.ps1 someParam
是否有办法设置env:path,以便只需键入:

someScript someParam
但只有当工作目录是本地存储库的一部分时?例如,当我在时,它会起作用:

c:\code\project1
c:\code\project1\source
但不是在

c:\code
c:\code\project2

谢谢

正如@graimer提到的,您可以覆盖默认的设置位置(和cd)行为。但是,一种更简单的方法可能是只创建一些别名。我这样做是为了确保获得特定版本的msbuild,例如

New-Alias msbuild4 c:\windows\microsoft.net\framework\v4.0....\msbuild.exe

为此,我确信您需要使用自定义代码扩展(代理函数)
设置位置
,该自定义代码检查当前路径
$pwd
,并修改会话环境变量(如果您在特定文件夹中)。谢谢!代理函数看起来非常简洁,但别名只需2秒钟即可编写,所以我现在就用它。