2017-05-03 79 views
1
start-process "chrome.exe" '--profile-directory="Default"' 

当我几次运行此命令时,它会在单独的窗口中打开我的默认配置文件镶边。当我的默认配置文件chrome已打开时,我能做些什么来打开新的选项卡?在新选项卡中打开Chrome而不是通过PowerShell的新窗口启动进程

+1

我怀疑'Start-Process'是否会让你在那里。您可能必须对现有的Chrome进程执行一些操作。 – lit

+2

你想打开一个新标签页?想必你想打开一个特定的页面?在这种情况下,您可以利用默认的浏览器行为,如: 'Start-Process -FilePath“http://google.com”' –

+0

我想通过charma中的karma调试测试http:// localhost: 9876/debug.html',但我很烦恼随时弹出chrome窗口。运行测试时刷新一个打开的选项卡可能会很棒。我想我会尝试通过'.sh'文件来运行chrom以获得那个点 –

回答

3

这将打开一个标签,而不是一个新的窗口对我来说:

start-process "chrome.exe" "http://localhost:9876/debug.html",'--profile-directory="Default"' 

但是,如果你只是想刷新页面(如你在评论中说的),你也可以使用一个小WindowsScript这样的Powershell内部:

# * Get a WindowsScript Shell 
$WindowsScriptShell = New-Object -ComObject wscript.shell 

# * Check if Chrome is running and activate it 
if ($WindowsScriptShell.AppActivate('Chrome')) { 

    # * Take a nap to give Windows time to focus Chrome 
    Sleep 2 

    # * Refresh the page by sending the F5 Key 
    $WindowsScriptShell.SendKeys('{F5}') 
} 

# * If Chrome isn't there, tell us 
Else { 
    Write-Output "Chrome is not started!" 
} 

这是否接近?

使用VBScript,您还可以使用CTRL+<Number>组合在刷新之前切换到特定选项卡。所以你必须在F5键之前加上 $vbscriptShell.SendKeys('^2')。我也试过用CTRL+T(VBScript中的'^ T')打开一个新标签,但是由于某种原因打开一个新窗口然后出现一个新标签...

+0

我试过'$ WindowsScriptShell.SendKeys('^ 1');睡眠2; $ WindowsScriptShell.SendKeys('{F5}')'这似乎是确定的,但它非常棘手,我必须始终将我的测试选项卡作为第一个选项卡,IE通过powershell更易于控制,但...: )最后我用'PhantomJS'在后台运行测试,在cmd中打印报告并添加npm脚本以在需要时运行chrome html报告,无论如何感谢您的帮助 –

+0

好吧,这听起来像一个更清洁的方法...祝您好运! – 30000MONKEYS

相关问题