【发布时间】:2020-10-21 16:48:50
【问题描述】:
我试图在设置变量时抑制命令的输出。我需要这样做,因为我已经使用PS2EXE-GUI 编译了 PowerShell 脚本。这个程序在一个单独的窗口中显示所有命令输出,这很烦人而且没有必要。我正在尝试使用Get-ChildItem "$MYSQLFOLDERLOCATION" | Out-String | Write-Host,但这仅在目录中没有任何其他内容时才有效,并且它会在屏幕上显示目录内容。我也一直在尝试使用Get-ChildItem "$MYSQLFOLDERLOCATION" | $ISMYSQLFOLDERPRESENT = $? | Out-Null,但这在语法上是不正确的。我可以使用类似的东西吗?我基本上想在 PowerShell 中执行一个 ls 等效命令,然后存储它是否成功,而不在屏幕上显示任何内容(我不能使用 Write-Output , Write-Host 等)
【问题讨论】:
-
听起来你在找
$IsMySqlFolderPresent = Test-Path $MYSQLFOLDERLOCATION -PathType Container? -
没错!我是 PowerShell 新手,从来不知道它存在 :) 如果你想把它变成答案,我会接受。
-
同意,Get-Childitem 在这里是错误的命令。使用 Write-Host 会加剧问题,因为无论您做什么,它都会始终输出到控制台。测试路径是一种方式。
-
我来自非 Windows 环境(Linux 类型),我一直使用 ls,设置变量,clear :)跨度>
标签: powershell