在bash脚本中,我需要启动用户Web浏览器。似乎有很多方法可以做到这一点:
- 第一个月
xdg-open
个gnome-open
在GNOME上www-browser
个x-www-browser
个- ...
有没有一种比其他方法更标准的方法可以在大多数平台上工作,或者我应该这样做:
#/usr/bin/env bash
if [ -n $BROWSER ]; then
$BROWSER 'http://wwww.google.com'
elif which xdg-open > /dev/null; then
xdg-open 'http://wwww.google.com'
elif which gnome-open > /dev/null; then
gnome-open 'http://wwww.google.com'
# elif bla bla bla...
else
echo "Could not detect the web browser to use."
fi
字符串
6条答案
按热度按时间9ceoxa921#
字符串
适用于许多平台
b09cbbtk2#
xdg-open
是标准化的,应该可以在大多数发行版中使用。否则:
eval
是邪恶的,不要使用它。1.引用变量。
1.以正确的方式使用正确的测试操作符。
下面是一个示例:
字符串
也许这个版本稍微好一点(尚未测试):
型
hts6caw33#
OSX:
字符串
或
型
或者干脆
型
xienkqul4#
您可以使用以下命令:
字符串
它不会运行用户的,而是系统默认的X浏览器。
请参阅:this thread.
ezykj2lf5#
采用其他答案并制作适用于所有主要操作系统的版本,并检查以确保URL作为运行时变量传入:
字符串
tzdcorbm6#
这可能不完全适用于您想要做的事情,但有一种非常简单的方法可以使用
http-server
npm package创建和启动服务器。安装后(只需
npm install http-server -g
),您可以将http-server -o
个它将从当前目录启动一个服务器,并打开一个浏览器到该页面。