我希望能够通过快捷方式(而不是脚本)中的单个 PowerShell 命令启动具有多个选项卡的 Microsoft Edge (Chromium)。以下是我对一个选项卡有效的内容:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -Command "& start microsoft-edge:https://www.outlook.com"
但我不清楚如何添加一组网站。像这样的东西:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -Command "& 启动 microsoft-edge:https://www.outlook.com;https://www.google.com “
这不起作用,但我正在寻找类似的东西。请注意,我没有尝试执行此操作的工作站的管理员访问权限。
最佳答案
据我所知,当您通过 microsoft-edge:
协议(protocol)方案启动时,仅支持单个 URL。
但是,您可以通过位于目录 $env:LOCALAPPDATA\Microsoft\WindowsApps 中的
启动 Edge ,确实接受多个 URL(请注意,在本例中需要用 MicrosoftEdge.exe
可执行文件,
分隔它们):
powershell.exe "start $env:LOCALAPPDATA\Microsoft\WindowsApps\MicrosoftEdge.exe https://example.org, https://google.com"
上面是缩写(请注意 -Command
CLI 参数的使用以及 Start-Process
的全名和参数名称的使用):
powershell.exe -Command "Start-Process -FilePath $env:LOCALAPPDATA\Microsoft\WindowsApps\MicrosoftEdge.exe -ArgumentList https://example.org, https://google.com"
事实上,对于基于可执行文件的调用在这种情况下,您甚至不需要 Start-Process
,因为 GUI即使使用直接调用,可执行文件也会异步启动:
powershell.exe "& $env:LOCALAPPDATA\Microsoft\WindowsApps\MicrosoftEdge.exe https://example.org https://google.com"
请注意需要使用 &
,因为可执行路径包含变量引用,并且两个 URL 现在以空格分隔(作为单独的参数传递)。
相反,如果您想等待 Edge 在从调用返回之前再次关闭,则通常使用Start-Process -Wait
,但不幸的是,这对于 Microsoft Edge 等 AppX 应用程序无效,至少从 PowerShell 7.3.3 开始是这样 - 请参阅 GitHub issue #10996 .
关于powershell - 是否可以在一行 PowerShell 中启动具有多个选项卡的 Microsoft Edge?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76006821/