我正在PowerShell中编写脚本。该脚本将获取列值为“ 0”的SQL表。脚本将发出声音警报,并在有限的时间内每次找到值“ 0”的列时弹出。如果用户在时间到期之前关闭弹出窗口,则声音警报将停止。
但是,如果SQL列值在时间到期之前从“ 0”变回“ 1”,我也想停止警报。
该脚本还应继续检查是否在SQL表中插入了列值为'0'的任何新行。
x
秒。x
秒之前关闭,请停止播放声音。我已经完成了第一部分。
其余的,如何在PowerShell中实现呢?
问题是我无法从工作PC发送代码。所以这是简短的版本:
$exchanges = Invoke-Sqlcmd -Query "SELECT * FROM #table"
while ($true) {
foreach ($exchange in ($exchanges | Where-Object status -eq '0')) {
$outputWindow = Start-Process powershell "-noexit -command cls;Write-host "Error"" -PassThru
[Console]::Beep(3000, 500)
$outputWindow.WaitForExit(10000)
$outputWindow.Kill()
}
}