在旧样式的命令外壳中,我有一个名为GOPATH的环境变量集,我可以
像这样运行命令%GOPATH%\bin\hello
:
Windows PowerShell 10中是否存在等效的简单命令?
编辑:我不尝试打印环境变量。我正在尝试使用它。
变量设置正确:
C:\WINDOWS\system32> echo $env:gopath
C:\per\go
现在,我想在命令行调用中实际使用它,但是它失败了:
C:\WINDOWS\system32> $env:gopath\bin\hello
At line:1 char:12
+ $env:gopath\bin\hello
+ ~~~~~~~~~~
Unexpected token '\bin\hello' in expression or statement.
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : UnexpectedToken
答案 0 :(得分:3)
使用$env:[Variablename]
例如:
$env:Appdata
或
$env:COMPUTERNAME
使用您的示例:
$env:GOPATH
要使用它来执行脚本,请使用
& "$env:GOPATH\bin\hello"
答案 1 :(得分:0)
一种解决方案是使用start-process -NoNewWindow来运行它。
C:\windows\system32> start-process -nonewwindow $env:gopath\bin\hello.exe
C:\windows\system32Hello, Go examples!
>
显然,这要冗长得多,并且将命令提示符置于看起来很奇怪的提示符:>
。但这确实有效。
答案 2 :(得分:0)
在路径中使用环境变量来调用命令将需要点表示法或call operator。用引号将变量展开,然后调用运算符将调用路径。
. "$env:M2_Home\bin\mvn.cmd"
& "$env:M2_Home\bin\mvn.cmd"