所以我有这个简单的function
返回我当前的脚本位置:
function Get-CurrentDir
{
$MyInvocation.MyCommand.Path
}
而且我想打印此文件,因此我在功能声明后尝试从PowerShell ISE:
Write-Host $(Get-CurrentDir)
Write-Host (Get-CurrentDir)
Write-Host Get-CurrentDir
这是我的输出:
Write-Host $(Get-CurrentDir) --> Write-Host $(Get-CurrentDir)
Write-Host (Get-CurrentDir) --> Write-Host (Get-CurrentDir)
Write-Host Get-CurrentDir --> Write-Host Get-CurrentDir
我做错了什么?
最佳答案
好的,您需要从脚本范围中获取变量,如下所示:
function Get-CurrentDir
{
$script:MyInvocation.MyCommand.Path
}
而且这将无法交互工作。您可能想在PowerShell中阅读更多about_scopes。
关于powershell - 如何打印函数的返回值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40526905/