我想打开一个网络浏览器:c, err := exec.Command("http://localhost:4001").Output()if err != nil { fmt.Printf("ERROR: %v, %v\n",err,c)} else { fmt.Printf("OK:%v\n",c)}我得到了错误ERROR: exec: "http://localhost:4001": file does not exist编辑:当您执行以下操作时,我要实现的功能与Windows和C#中的功能相同:Process.Start("http://localhost:4001")有了它,您的默认浏览器的新实例将启动,显示URL
3 回答
慕勒3428872
TA贡献1848条经验 获得超6个赞
"http://localhost:4001/"是URL,无法执行,但您可以执行网络浏览器(例如firefox)并将URL作为第一个参数传递。
在Windows上,存在OS X和Linux帮助程序,这些程序可用于启动默认的Web浏览器。我想FreeBSD和Android也有类似的事情,但是我不确定。以下代码段应在Windows,OS X和大多数Linux发行版上运行:
var err error
switch runtime.GOOS {
case "linux":
err = exec.Command("xdg-open", "http://localhost:4001/").Start()
case "windows", "darwin":
err = exec.Command("open", "http://localhost:4001/").Start()
default:
err = fmt.Errorf("unsupported platform")
}
回首忆惘然
TA贡献1847条经验 获得超11个赞
在Windows下使用:
exec.Command("cmd", "/c", "start", "http://localhost:4001/").Start()
慕姐8265434
TA贡献1813条经验 获得超2个赞
使用
exec.Command("open", "http://localhost:4001/").Start()
在以上tux21b的答案中,Windows上对我不起作用。但是这样做:
exec.Command(`C:\Windows\System32\rundll32.exe`, "url.dll,FileProtocolHandler", "http://localhost:4001/").Start()
- 3 回答
- 0 关注
- 222 浏览
添加回答
举报
0/150
提交
取消