windows – powershell传递命令行参数

前端之家收集整理的这篇文章主要介绍了windows – powershell传递命令行参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是我的代码
$script={
 Write-Host "Num Args:" $args.Length;
  Write-Host $args[0]   
}

Invoke-Command  -ScriptBlock $script

当我跑

powershell.exe .\test.ps1 one two three

我有

Num Args: 0

我以为我会得到

Num Args: 3
One

我错过了什么?

谢谢

你实际上有两个范围.脚本级别和脚本块级别. $args.Length和$args [0]将具有您在Invoke-Command级别所期望的内容.在脚本块中,还有另一个$args的范围.要从命令行获取args一直到脚本块,您需要从Invoke-Command -ArgumentList $args重新传递它们.

猜你在找的Windows相关文章