监视创建,然后通过Windows .bat脚本读取文件

时间:2013-07-17 21:11:05

标签: windows powershell batch-file vbscript polling

我想编写一个批处理脚本,它将轮询一个Windows目录一段时间限制,并在文件放入目录后立即选择一个文件。 如果文件未在该时间范围内放置在该目录中,它也会在一定时间后超时。

我还想解析xml文件并检查状态。

1 个答案:

答案 0 :(得分:2)

这是一个PowerShell脚本,可以完成您的要求。

$ content 变量将存储文件的内容(它实际上是一个行数组,因此您可以将它放入foreach循环中)。

$file = 'C:\flag.xml'
$timeout = New-TimeSpan -Minutes 1
$sw = [diagnostics.stopwatch]::StartNew()
while ($sw.elapsed -lt $timeout)
{
    if (Test-Path $file)
    {
        "$(Get-Date -f 'HH:mm:ss') Found a file: $file"
        $content = gc $file
        if ($content -contains 'something interesting')
        {
            "$(Get-Date -f 'HH:mm:ss') File has something interesting in it!"
        }
        break
    }
    else
    {
        "$(Get-Date -f 'HH:mm:ss') Still no file: $file"
    }
    Start-Sleep -Seconds 5
}