等待文件完成写入,然后再执行下一个脚本

时间:2018-07-22 23:18:41

标签: powershell

所以我正在运行以下命令:

Write-Host $RxArr[0].SubString(12)
$RxArr[0].SubString(12) | Out-File "Code\RunCode.ps1"
start powershell (".\Code\RunCode | Out-File 'Code\OutCode.log'")
try
{
    . ./DM '47333409' (cat "Code\OutCode.log").replace('`r','<cr>').replace('`n', '<br>') -custom 'Sent Console Log'
}
catch
{
Write-Host "Unable to send Direct Message."
}

我的问题是Try块中的代码给了我

  

找不到Code \ OutCode.log

”,然后我去"Code",在那找到了它。然后再次运行它,它起作用了。我尝试运行2种不同的代码(RunCode.ps1中的2种不同的代码),代码1的结果为A,代码2的结果为B。 第一次运行时,我得到

  

找不到错误OutCode.log

。当我再次运行它时,我得到A。我意识到代码不是在等待Out-File完成。我尝试将Out-File替换为'>',但仍然遇到相同的问题。有什么办法可以做到这一点?我正在尝试从字符串中运行脚本。

编辑:我尝试了Sleep 1, 2, 3并且都一样,该命令一直等到睡眠结束后才将其写入文件。

0 个答案:

没有答案