我们有someScript.ps1
应该做一些事情,然后调用tail.ps1
(它会记录日志文件)。当用户在日志文件中看到某个事件(例如服务已经停止)时,他们应该可以使用Ctrl + C取消tail.ps1
并返回someScript.ps1
流。
我想这可以使用windows start
命令来调用调用powershell脚本的.bat文件,但是想知道是否可以在不需要的情况下从PS调用tail.ps1
对于.bat。
注意:使用& .\tail.ps1
无效。 Ctrl + C取消两个脚本,即someScript.ps1
。我们正在使用Get-Content -Wait
尾部。
答案 0 :(得分:0)
让我给你一个出发的逻辑。
首先,您运行 somescript.ps1 ,然后将 tail.ps1 称为作业。
start-job -filepath c:\scripts\tail.ps1
现在,您可以根据您提到的某些条件使用停止作业来停止作业(例如,服务已停止)。
然后,您可以使用接收作业来接收作业的输出,甚至可以使用等待作业
等待作业完成根据您的情况,您可以使用 do-While 并且您可以接收作业,或者您可以根据您的要求停止工作。
最后,它只会将控制权交还给 somescript.ps1 。
如需进一步参考工作,请浏览链接,或者您可以在这里询问。
以下链接有截图的完整说明:
希望这种逻辑对你有所帮助。