Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net Powershell是否获得内容+;单独调用表达式执行语句,还是一次全部调用?_.net_Windows_Powershell - Fatal编程技术网

.net Powershell是否获得内容+;单独调用表达式执行语句,还是一次全部调用?

.net Powershell是否获得内容+;单独调用表达式执行语句,还是一次全部调用?,.net,windows,powershell,.net,Windows,Powershell,考虑一下这句话: Get-Content .\zipper.ps1 | Invoke-Expression 这是Technet中记录的一个变体 Invoke-Expression (Get-Content '.\zipper.ps1' -Raw) 虽然第二条语句的执行速度要快得多,但这两条语句都很好。 假设zipper.ps1是一个包含多行可执行Powershell代码的脚本 上述语句是否会将zippers.ps1中的每一行作为单独的命令执行 或者,整个脚本将作为一个大的连接字符串执行吗 我

考虑一下这句话:

Get-Content .\zipper.ps1 | Invoke-Expression
这是Technet中记录的一个变体

Invoke-Expression (Get-Content '.\zipper.ps1' -Raw)
虽然第二条语句的执行速度要快得多,但这两条语句都很好。 假设zipper.ps1是一个包含多行可执行Powershell代码的脚本

上述语句是否会将zippers.ps1中的每一行作为单独的命令执行

或者,整个脚本将作为一个大的连接字符串执行吗

我的问题与powershell语句的字符限制有关——如果每个代码行都在powershell字符限制内,但整个脚本将超过字符限制,那么上面的命令是否会超过字符限制

PowerShell可能有260个字符的限制(不确定)。这些页面提到了Powershell中的字符限制:


详细信息:

Technet表示:

cmdlet在路径指定的位置获取项的内容,例如文件中的文本

“cmdlet作为命令计算或运行指定字符串,并返回表达式或命令的结果。”

到目前为止还不错——这很清楚地解释了我上面的陈述是如何以及为什么起作用的。但是它没有告诉我这些语句是作为单个语句执行的,还是作为一个大的连接字符串执行的。第二种变体运行得更快这一事实可能是一个线索

也许我需要为..每个添加一个

technet文档表示Get Content返回一个集合,而表示它返回一个数组。这是相互矛盾的信息,但不确定数组与集合是否重要。我的问题是


thx

如果您对内容中的每一行都有疑问,则此调用表达式将检查所有语句。事实上,使用管道时,每一行都是单独计算的:查看文档中iex的参数说明:它接受
管道输入
。至于性格限制,你为什么认为这是个问题?这是我第一次听到关于PS scripts.Thx的担忧,请回复@wOxxOm。你能证明在使用管道时每条管线都是单独评估的吗?iex确实接受管道。那么,您是说管道总是一次对语句进行一行计算?(同时,添加到OP re角色限制的链接)一个彻底而令人敬畏的答案不幸被删除@wOxxOm,希望您能转发。thx用于回复我之前的评论如果您对内容中的每一行都有疑问,则此调用表达式将检查所有语句。实际上,在使用管道时,每一行都会单独计算:查看文档中iex的参数说明:它接受
管道输入
。至于性格限制,你为什么认为这是个问题?这是我第一次听到关于PS scripts.Thx的担忧,请回复@wOxxOm。你能证明在使用管道时每条管线都是单独评估的吗?iex确实接受管道。那么,您是说管道总是一次对语句进行一行计算?(同时,添加到OP re角色限制的链接)一个彻底而令人敬畏的答案不幸被删除@wOxxOm,希望您能转发。谢谢你回复我之前的评论