使用参数到本地文件打开网页的Bat文件

时间:2013-07-04 20:28:22

标签: windows url batch-file cmd

使用以下命令创建bat文件

start http://www.google.com/search?q=test

我想要它做什么,它打开我的默认网络浏览器(在我的情况下是Chrome)并浏览到网址http://www.google.com/search?q=test

但是,bat文件包含:

start file:///C:/Users/d92495j/Desktop/OracleCDs/WebLogic/template.html?wbt=1

仅打开我的默认浏览器并浏览到file:/// C:/Users/d92495j/Desktop/OracleCDs/WebLogic/template.html

请注意缺少?wbt = 1 。为了解决这个问题,我尝试过:

  1. 编码问号的网址
  2. 运行启动命令参数“窗口名称”“引号中的文件路径”
  3. 将文件路径放入 变量并将变量传递给start
  4. 但这些都没有奏效。我怎样才能让它发挥作用?

2 个答案:

答案 0 :(得分:3)

到目前为止,我提出的最佳解决方案是:

powershell -noprofile -command "[void][System.Diagnostics.Process]::Start('chrome', 'file:///C:/Users/d92495j/Desktop/OracleCDs/WebLogic/template.html?wbt=1')"

此解决方案具有批处理文件启动PowerShell,然后使用.NET System.Diagnostics.Process.Start方法以正确的参数启动Chrome。唯一的缺点是它为我做了一个浏览器选择,我更喜欢它使用我的默认浏览器,但我可以忍受。我会接受使用默认浏览器的另一个答案(这并不复杂得多)。

答案 1 :(得分:2)

我测试了这个并获得了相同的结果。我不太确定,但我猜这属于问号。 Windows的本地文件系统永远不会有?的文件名,因为这是一个像*这样的“通配符”。我认为文件名可能会被截断。

以下代码也不起作用或仅产生错误消息:

start "file:///C:/Users/d92495j/Desktop/OracleCDs/WebLogic/template.html?wbt=1"
start file:///"C:/Users/d92495j/Desktop/OracleCDs/WebLogic/template.html?wbt=1"