![如何在默认浏览器中打开附加了查询字符串的本地文件?](https://linux22.com/image/1408132/%E5%A6%82%E4%BD%95%E5%9C%A8%E9%BB%98%E8%AE%A4%E6%B5%8F%E8%A7%88%E5%99%A8%E4%B8%AD%E6%89%93%E5%BC%80%E9%99%84%E5%8A%A0%E4%BA%86%E6%9F%A5%E8%AF%A2%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E6%9C%AC%E5%9C%B0%E6%96%87%E4%BB%B6%EF%BC%9F.png)
我想通过 shell 脚本做这样的事情:
$ open 'foo.html?foo=bar'
遗憾的是,这失败了,因为它在打开浏览器之前寻找一个名为的文件foo.html?foo=bar
而不是:foo.html
The file /tmp/foo.html?foo=bar does not exist.
不过,我注意到它open
支持 HTTP(S) URL:
$ open 'https://mathiasbynens.be/demo/get?foo=bar'
因此我尝试使用一个file://
URL:
$ open 'file:///tmp/foo.html?foo=bar'
这没有错误(是的),但它仍然只foo.html
在浏览器中打开,没有附加查询字符串。
那么,这可能吗?
答案1
我不认为你可以直接用参数打开文件 - 即使你用
open -a "Safari" ...
。
根据您想要完成的任务,您可以使用以下命令启动内置的 PHP Web 服务器
php -S localhost:8000
并使用类似参数调用你的网站
open "http://localhost:8000/foo.html/?foo=bar"
我希望这有帮助。