为什么脚本将自身输出到控制台?

Why does the script output itself to the console?

我的脚本在执行脚本之前将自身输出到控制台。这是我的代码:

for ($i=1; $i -le 1000; $i++) {
    Write-Host "Sending request #$i"
    $request = Invoke-WebRequest "http://localhost/test"



    $random = Get-Random -Minimum 1 -Maximum 5
    Start-Sleep -Seconds $random

}

然后在 PowerShell ISE 中执行此操作:

我做错了什么,我该如何解决?

当您使用 PowerShell ISE 并且 运行 脚本未保存时会发生这种情况。

基本上它将整个脚本复制到控制台,然后从那里执行它。

保存到文件后,会切换到调用文件,不会显示整个脚本。

如果您的执行策略设置为不执行脚本,您可以亲眼看到这一点,因为您可以 运行 脚本在保存之前而不是之后(直到您更改执行策略)。