¿Qué comando debemos ejecutar (desde Java, pero eso no debería importar) en Linux (diferentes distribuciones comunes) para abrir una URL determinada en el navegador predeterminado?Linux: comando para abrir URL en el navegador predeterminado
Respuesta
La mayor parte de una distribución de cruz es xdg-open http://stackoverflow.com
Al menos en Debian y todos sus derivados, hay un script de shell 'sensible-navegador' que elige el navegador más adecuado para la url dada.
En Java (versión 6+), también se puede hacer:
Desktop d = Desktop.getDesktop();
d.browse(uri);
Aunque esto no funcionará en todos los Linuxes . En el momento de escribir, Gnome es compatible, KDE no lo es.
en ubuntu puedes probar gnome-open.
$ gnome-abierta http://www.google.com
creo que una combinación de xdg-abierta como se describe por shellholic y - si falla - la solución a la búsqueda de un navegador usando el comando which
como se describe here es probablemente la mejor solución.
Creo que el uso de xdg-open http://example.com
es probablemente la mejor opción.
En caso de que no lo tienen instalado supongo que podría tener sólo kde-open
o gnome-open
(ambos de los cuales toman un único archivo/url) o alguna otra solución alternativa, como un bucle sobre los nombres ejecutables comunes del navegador hasta que encuentre una que puede ser ejecutado (usando cual) Si desea una lista completa de soluciones alternativas, sugiero leer xdg-open (es un script de shell que invoca kde-open/gnome-open/etc. O alguna otra alternativa).
Pero dado que xdg-open y xdg-mime (utilizados para uno de los retrocesos,) son guiones de shell, recomiendo incluirlos en su aplicación y si no se puede llamar al which xdg-open
, agréguelos a la variable PATH temporal en el entorno de subprogramas y llamarles. Si xdg-open falla, recomendaría arrojar una excepción con un mensaje de error de lo que salió en stderr y capturar la excepción e imprimir/mostrar el mensaje de error.
Ignoraría la solución java awt Desktop ya que el error parece indicar que no planean admitir escritorios que no sean gnome en el corto plazo.
sensible-browser [options] [URL or filename]; # Said to be the best.
# Server translates to:
echo $BROWSER;
w3m [options] [URL or filename]
# Desktop (X11): I use/prefer,
x-www-browser http://tv.jimmylandstudios.com
Considere agregar algunos detalles a su respuesta. –
creo que el método más simple sería utilizar Python:
python -m webbrowser "http://www.example.com/"
funciona como un encanto.también plataforma cruzada (al menos funciona en Mac y Linux) –
En las distribuciones que vienen con la orden de apertura,
$ open http://www.google.com
En Ubuntu 16.04 no funciona porque intenta abrir el archivo. – omikron
- 1. Hiperenlace JLabel para abrir el navegador en la URL correcta
- 2. LinkLabel ... abrir en el navegador web predeterminado?
- 3. Android: Abrir una URL en un navegador
- 4. ¿Cómo abrir el navegador predeterminado de iPhone?
- 5. Python - Flask - abrir una página web en el navegador predeterminado
- 6. Abrir una URL en el navegador predeterminado en una aplicación de escritorio de Windows 8
- 7. Abrir una página web en el navegador predeterminado
- 8. Linux equivalente al comando "abrir" de Mac OS X
- 9. ¿Cómo abrir una URL con el navegador predeterminado con las aplicaciones multiplataforma de FireMonkey?
- 10. Abrir URL debajo del cursor en Vim con el navegador
- 11. ¿Llamar al sistema operativo para abrir la url?
- 12. Cómo iniciar el navegador para abrir el archivo local
- 13. Enlace WebView haga clic en abrir navegador predeterminado
- 14. Abrir webview no en el nuevo navegador
- 15. ¿Cómo abrir un terminal de comando en Linux?
- 16. ¿Cómo puedo abrir un enlace en el navegador web predeterminado desde una HTA?
- 17. ¿Abre el sitio web en el navegador predeterminado del usuario sin permitir que inicie nada más?
- 18. Abrir archivo actual en el navegador web en Vim
- 19. Google Apps Script para abrir una URL
- 20. ¿Cómo abrir el enlace en otro navegador?
- 21. Abrir pdf en el complemento del navegador
- 22. Abrir una URL de Windows Forms
- 23. quiere abrir el enlace en el navegador externo de WP7
- 24. Invocar navegador predeterminado de C#?
- 25. ¿Cómo puedo abrir un archivo HTML en el navegador predeterminado desde una aplicación Java Swing?
- 26. Android WebView clic abrir en WebView no es un navegador predeterminado
- 27. Ejecutar el comando de la aplicación para abrir el terminal
- 28. Abrir de forma programada las URL en el navegador web en Python
- 29. Cómo abrir una URL en modo incógnito de cromo
- 30. Abrir URL en Java para obtener el contenido
Por desgracia no está presente en RHEL –
Creo http: //stackoverflow.com/a/9293402/2498188 debería ser la respuesta correcta. –
@ OndraŽižka sensible-browser también es Debian, ¿no? ¿Qué funcionaría en RHEL? – cmc