PowerShell的-Version参数究竟做了什么?

问题描述:

PowerShell的帮助(powershell -?)规定:PowerShell的-Version参数究竟做了什么?

-Version 
    Starts the specified version of Windows PowerShell.

然而,随着powershell -Version 1开始PowerShell的2所有的事情我想,只有在v2中存在并且没有V1仍能正常工作,如-split运营商或Get-Random cmdlet时。

那么与-Version参数运行PowerShell的时候,如果引入的语言功能和cmdlet后依然存在,工作完全改变?这使得PowerShell v1的测试脚本变得更加困难,因为我并不总是记得发生了什么变化。

我不认为这交换机做任何事情特别是1.0和2.0无法安装并排侧。这个开关从一开始就被放入。我的猜测是,他们预计能够并行运行不同版本的PowerShell。也许这会在未来的版本中并行安装,然后这个开关实际上会有用。

+0

嗯,让我不知道为什么他们捕获超过1个或2,输出错误信息,其它版本*(»无法启动Windows PowerShell版本3,因为它没有正确安装。«)*,但没有为第1版做实际上它们会有相同的错误。 – Joey 2010-01-02 19:53:51

+0

另一个猜测 - 他们认为2.0向后兼容1.0? – 2010-01-02 22:20:30

+0

可能是相同的原因,2.0安装到System32 \ WindowsPowerShell \ V1.0目录。 – 2010-01-04 04:41:33