Windows 10 如何从命令行在Microsoft Edge中打开URL?

Windows 10 如何从命令行在Microsoft Edge中打开URL?,windows-10,microsoft-edge,Windows 10,Microsoft Edge,我需要在Microsoft Edge(在Windows 10上)中打开URL。当我调用 start shell:AppsFolder\Microsoft.MicrosoftEdge_8wekyb3d8bbwe!MicrosoftEdge http://www.google.com 然后,Microsoft Edge已正确启动,但未打开给定的URL(本例中为www.google.com)。它将打开Bing搜索,其中指定的URL将用作搜索词。以下方法应通过命令提示符(cmd)工作: Windows

我需要在Microsoft Edge(在Windows 10上)中打开URL。当我调用

start shell:AppsFolder\Microsoft.MicrosoftEdge_8wekyb3d8bbwe!MicrosoftEdge http://www.google.com

然后,Microsoft Edge已正确启动,但未打开给定的URL(本例中为www.google.com)。它将打开Bing搜索,其中指定的URL将用作搜索词。

以下方法应通过命令提示符(cmd)工作:


Windows 10:使用此目标创建快捷方式:

%windir%\system32\cmd.exe /c "start microsoft-edge:https://twitter.com"

我想推荐:
Microsoft边缘运行包装器

您可以这样运行它:

RunEdge.exe [URL]
  • URL可能包含也可能不包含协议(http://),如果未提供,包装器将添加http://
  • 若并没有提供URL,那个么它只会打开edge
示例:

RunEdge.exe http://google.com
RunEdge.exe www.stackoverflow.com

这并不是一种全新的方法,但它被包装为exe文件,在某些情况下可能很有用。对我来说,这是从IBM Notes Basic客户端启动Edge的一种方式。

它将以良好的旧dos脚本方式完成或多或少相同的事情

set add=%1
if %add%$ ==$ set add="about:blank" && goto launch

rem http://
set test=%add:~0, 7%
if %test% == http:// goto launch

rem ftp:// 
set test=%add:~0, 6%
if %test% == ftp:// goto launch

rem https://
set test=%add:~0, 8%
if %test% == https:// goto launch

rem add http
set add=http://%add%

:launch
start microsoft-edge:%add%

我也在想,为什么不能像在windows 10中启动“旧式”应用程序那样启动microsoftedge.exe。在网上搜索,我找到了答案——这与微软如何实现“通用应用程序”有关

下面是这个答案的简要总结,但我建议阅读整个条目,因为它很好地解释了这些“通用应用程序”是如何处理的。Microsoft Edge不是我们将要处理的唯一一个这样的应用程序

以下是链接:

以下是该页的摘要:

“Microsoft Edge是一个“现代”通用应用程序。这意味着它不能以传统的Windows方式从命令行打开:可执行文件名后跟命令开关/参数值。但有志者事竟成。在这种情况下,“方式”称为协议激活。”

感谢这篇文章的作者Stephen Glasskeys。

还有一条捷径:

C:\Windows\System32\cmd.exe /c start shell:AppsFolder\Microsoft.MicrosoftEdge_8wekyb3d8bbwe!MicrosoftEdge http://localhost:6516

就我个人而言,我使用我创建的这个函数,并将其放入我的配置文件脚本
..\Documents\WindowsPowerShell\..profile
,请随意使用。由于我来自英国,我希望尽可能访问
.co.UK
,如果您来自其他地区,可以添加您自己的国家代码

# Function taking parameter add (address) and opens in edge.
Function edge {
    param($add)
    if (-not ($add -contains "https://www." -or $add -contains "http://www.")) {
        if ($add[0] -eq "w" -and $add[1] -eq "w" -and $add[2] -eq "w") {
            $add = "https://" + $add
        } else {
            $add = "https://www." + $add
        }
    }

    # If no domain, tries to add .co.uk, if fails uses .com
    if (-not ($add -match ".co" -or $add -match ".uk" -or $add -match ".com")) {
        try {
            $test = $add + ".co.uk"
            $HTTP_Request  = [System.Net.WebRequest]::Create($test)
            $HTTP_Response = $HTTP_Request.GetResponse()
            $add = $add + ".co.uk"
        } catch{
            $add = $add + ".com"
        }
    }
    Write-Host "Taking you to $add"
    start microsoft-edge:$add
}

然后,您只需在powershell中调用:
edge google
,即可转到
https://www.google.co.uk

看起来情况已经改变,以前的解决方案不再有效

但是,以下是在Microsoft Edge上启动CNN.com的有效命令:

microsoft-edge:http://www.cnn.com

关于从命令行在MicrosoftEdge中打开空白选项卡,我想补充这里的其他答案

我想补充的一个观察结果是,如果我删除后面的冒号,Windows不会检测到命令
MicrosoftEdge
。我想,如果我打开浏览器时没有提及目标URL,例如打开空白选项卡时,就会出现这种情况

如何在Microsoft Edge中打开空白选项卡?

  • 从运行提示-
    microsoft edge:about:blank
  • 从命令提示符-
    启动microsoft edge:about:blank
您还可以在运行提示下使用Edge启动搜索。比方说,我必须搜索
巴拉克·奥巴马
,然后在运行提示符下发出下面的命令-

microsoft-edge:Barack Obama

它在Edge中启动了微软的Bing搜索网站,搜索词为
Barack Obama

Microsoft Edge:http://google.com
(根据需要打开谷歌)

microsoft edge:
(刚刚打开)

虽然接受的答案是正确的,但在从非控制台应用程序运行时,它会出现闪烁控制台窗口的不必要的瑕疵

我发现最有效的解决方案是以下命令行,这里仅在a中提到:

explorer.exe "microsoft-edge:<URL>"
explorer.exe“microsoft边缘:”
请记住,如果包含
%%
符号,则需要键入
%%
,因为Windows使用该符号进行变量扩展


希望有人对此有所帮助。

所有其他解决方案都适用于Microsoft Edge(旧版)和Windows 10。 从2020年起,它将停止使用,并由微软Edge(基于铬)取代

在Windows 7、8和10上使用新边缘的解决方案是:

start msedge URL
资料来源:


我刚刚在PowerShell中测试了上面的命令,它为我正确打开了google.com。感谢您指出这一点。我的命令在PowerShell中确实有效。我以前在命令提示符(cmd)中尝试过它(正如我提到的,在这里它会打开Bing搜索)。我真的很困惑为什么cmd和PowerShell中的行为不同,但我可以通过PowerShell运行该命令。如果由于某种原因无法运行,请检查您的引用。我对microsoft edge的“资源管理器”有问题:https://www.example.com/foo?querystring=yes“当不使用引号时(尽管使用
start
我也没有任何问题)。你怎么知道的?认真地我决不会那样做。。(适用于Windows 10 Edge)如何从c#启动它?谢谢。@wasatchwizard:see@FruitBreak,这里有点晚了,但这是有效的,因为Microsoft Edge的可用url关联(可启动协议)包括以下内容:
http
https
Microsoft Edge
read
。所讨论的特定协议,
Microsoft Edge
,是特定于Edge的,而其他协议则受制于默认应用程序设置(“按协议选择默认应用程序”)。如果edge是
read
协议的默认应用程序,则可以通过在文件资源管理器
read中键入以下命令来启动它:http://www.cnn.com
http
https
可以设置为单独的协议,也可以通过默认的web浏览器一起设置。不支持
文件:
方案!请注意,您不需要在此处使用引号。因此,如果需要使用程序参数字符串语法,则可以使用
“c:/windows/system32/cmd.ex
start msedge URL