我想在PowerShell脚本中通过设置标志输出变量和值,并在整个脚本中查看数据。
我该怎么做呢?
例如,PowerShell与下面的PHP代码有什么等价之处?
echo "filesizecounter: " . $filesizecounter
我想在PowerShell脚本中通过设置标志输出变量和值,并在整个脚本中查看数据。
我该怎么做呢?
例如,PowerShell与下面的PHP代码有什么等价之处?
echo "filesizecounter: " . $filesizecounter
当前回答
还应该提到的是,Set-PSDebug类似于老式的批处理命令echo:
Set-PSDebug -Trace 1
该命令将显示正在执行的脚本的每一行:
当Trace参数的值为1时,脚本的每一行都在运行时被跟踪。当参数值为2时,变量赋值、函数调用和脚本调用也会被跟踪。如果指定了Step参数,在运行脚本的每一行之前都会收到提示。
其他回答
到目前为止,在powershell中最简单的方法是创建字符串对象,让管道输出它:
$filesizecounter = 8096
"filesizecounter : $filesizecounter"
当然,当不使用Write-*方法时,您确实放弃了一些灵活性。
Write-Host "filesizecounter : " $filesizecounter
还应该提到的是,Set-PSDebug类似于老式的批处理命令echo:
Set-PSDebug -Trace 1
该命令将显示正在执行的脚本的每一行:
当Trace参数的值为1时,脚本的每一行都在运行时被跟踪。当参数值为2时,变量赋值、函数调用和脚本调用也会被跟踪。如果指定了Step参数,在运行脚本的每一行之前都会收到提示。
Powershell有一个别名映射echo到Write-Output,所以你可以使用:
echo "filesizecounter : $filesizecounter"
echo是Write-Output的别名,尽管它看起来和Write-Host一样。
PowerShell中echo和Write-Host的区别是什么?
echo是Write-Output的别名,它写入Success输出流。这允许通过管道处理输出或重定向到文件中。Write-Host直接写入控制台,因此输出不能再被重定向/处理。