停止Firefox进程失败,因为不存在PID?

目前有大约50个URL,我们需要定期在工作中的壁挂电视上随机观看,以及6个URL,这些URL必须始终可用并且可用。计划是从50个列表中选择一个随机URL,并在Firefox中显示30秒,然后终止进程并选择另一个URL在其前身自动打开,但始终在后台维护其他6个Firefox实例。 我遇到的问题是,PowerShell代码显示了新Firefox实例的PID,但是Task Manager中不存在该PID,因此该PID无法关闭,最终导致打开的页面过多。 不知道如何解决此问题,欢迎提出任何想法,尽管最好使用Powershell相关的解决方案。

制表符旋转器不起作用,因为我们打开了太多选项卡。尝试实现基于时间的脚本,因此将杀死30秒以上但不到1分钟的任何Firefox实例,但这似乎总是杀死所有Firefox实例,包括必须始终可用的6个实例。

PowerShell代码的一部分如下:

$bb = 1

$app = Get-Content $importPath |
       Get-Random -Count $bb |
       ForEach-Object {Start-Process -PassThru $_}

Wait-Process $app.Id

Write-Host $app.Id

Start-Sleep -Seconds 30

Stop-Process $app

当前脚本向我显示了ISE中“写入主机$ app.Id”的PID,但是任务管理器中不存在该PID,因此想知道这是否是与POSH相对的与Firefox相关的问题。 预期结果将是PS杀死显式PID,并在Firefox中产生一个新的随机URL。

henghbing 回答:停止Firefox进程失败,因为不存在PID?

您可以尝试通过为Firefox的脚本旋转实例指定一个配置文件,并为您的6个页面指定一个单独的配置文件来强迫它在单独的过程中打开:Is there a way to force Firefox to launch in a new process?

这涉及使用-p指定配置文件,显然,单独的配置文件实例将是单独的进程。

使用-P一次手动创建一个配置文件,例如“脚本”,另一个创建文件,例如“ AlwaysOn”,然后使用 -p脚本从脚本启动。使用-p AlwaysOn启动6个背景选项卡,查看是否使进程分离。

本文链接:https://www.f2er.com/3131812.html

大家都在问