4

从命令行或批处理文件调用时,Powershell V2.0 脚本将接受的最大参数数是多少?

4

2 回答 2

8

理论上的最大值为 2 GB 的参数。:-) 这是因为函数映射到对象数组 ( $args) 中的未映射参数和 .NET 2.0/4.0(安装了 4.5)中的数组可以索引到 Int32.MaxValue。据我了解,实际限制略低于实际类型。FWIW 我可以在 PowerShell 中创建一个大小为 128MB 的对象数组。我认为对参数数量的更现实限制是对命令行长度的限制。在某个时间点 cmd.exe 的最大行长度为 8191。我不确定 PowerShell 的最大值是多少,但我猜它类似于 cmd.exe 的最大值。此外,如果需要启动外部进程,那么这些 shell 会通过CreateProcess API,它有 32,767 个字符的限制用于传递给进程的命令行。

于 2012-09-27T23:04:38.057 回答
0

我不知道有任何限制,您打算使用多少个?

于 2012-09-27T22:22:22.530 回答