我正在尝试使用脚本使firefox打开具有多个URL的1个私有窗口,但是问题是如果我打开了firefox并运行该脚本,它将在私有窗口中打开1个URL,然后打开另一个私有窗口并打开其余的URL
如果我关闭了Firefox并运行该脚本,它将按预期运行,并且只有1个私有窗口打开,打开所有标签中的所有URL
我用google chrome尝试了相同的脚本,无论是否打开了chrome,它都能按预期工作,所以我假设它与我不了解的Firefox设置有关
$urls = @("https://google.com/","https://www.youtube.com/","https://www.facebook.com")
foreach($url in $urls){
start "C:\Program Files\Firefox Developer Edition\firefox.exe" -ArgumentList @( '-private-window' , $url)
}
我还尝试了以下形式的代码:
start "C:\Program Files\Firefox Developer Edition\firefox.exe" -ArgumentList @( '-private-window' , 'https://google.com/')
start "C:\Program Files\Firefox Developer Edition\firefox.exe" -ArgumentList @( '-private-window' , 'https://facebook.com/')
start "C:\Program Files\Firefox Developer Edition\firefox.exe" -ArgumentList @( '-private-window' , 'https://youtube.com/')
两个代码都做同样的事情,我得到的结果也一样。
我想要打开1个私有窗口,而不管我打开了多少firefox选项卡或窗口,并仅在这1个私有窗口中打开了脚本中的URL。
注意:上面的代码在chrome中可以按预期工作,因此问题可能是在Firefox中,需要不确定哪些内容需要更改。
答案 0 :(得分:0)
所以我终于能够在某种程度上重现您的问题。如果我按原样运行ur脚本,则会在一个私人窗口中打开3个标签。如果我再次运行它,它将在现有窗口中添加新标签。
然后我在打开一个正常窗口的情况下运行了脚本,我想我在这里看到了您的问题。已打开2个私有窗口,一个带有2个选项卡,一个带有1个。一个带有2个选项卡的窗口中有一个为空白。因此其中一个网址未按预期打开。
在重复中,我发现它并非总是与“ foxblocked”哈哈相同的URL。因此,我在foreach
循环中添加了一个延迟,该延迟似乎已经消除了我所看到的问题。也许firefox.exe
不能像我们服务它一样快地处理请求。
$urls = @("https://google.com/","https://www.youtube.com/","https://www.facebook.com")
foreach($url in $urls){
start "C:\Program Files\Mozilla Firefox\firefox.exe" -ArgumentList @( '-private-window' , $url)
Start-Sleep -Seconds 1
}