Quelle commande nous devons exécuter (de Java, mais cela ne devrait pas importer) sur Linux (différentes distributions communes) pour ouvrir une URL donnée dans le navigateur par défaut?Linux: commande pour ouvrir l'URL dans le navigateur par défaut
Répondre
Le plus une distribution croisée est xdg-open http://stackoverflow.com
Au moins sur Debian et tous ses dérivés, il existe un script shell 'sensible-browser' qui choisit le navigateur le mieux adapté à l'url donnée.
En Java (version 6+), vous pouvez aussi le faire:
Desktop d = Desktop.getDesktop();
d.browse(uri);
Bien que cela ne fonctionnera pas sur tous les systèmes Linux . Au moment de l'écriture, Gnome est supporté, KDE ne l'est pas.
Sur Ubuntu, vous pouvez essayer gnome-open.
gnome-open http://www.google.com $
Je pense qu'une combinaison de xdg ouvert tel que décrit par shellholic et - si elle ne parvient - la solution à la recherche d'un navigateur en utilisant la commande which
comme décrit here est probablement la meilleure solution.
Je pense qu'utiliser xdg-open http://example.com
est probablement le meilleur choix.
Dans le cas où ils ne l'ont pas installé je suppose qu'ils pourraient avoir juste kde-open
ou gnome-open
(les deux qui prennent un seul fichier/url) ou une autre solution de contournement, comme une boucle sur les noms exécutables du navigateur commun jusqu'à ce que vous trouviez un qui peut être exécuté (en utilisant lequel). Si vous voulez une liste complète de solutions de contournement/fallbacks, je vous suggère de lire xdg-open (c'est un script shell qui appelle kde-open/gnome-open/etc ou un autre moyen de secours). Mais comme xdg-open et xdg-mime (utilisé pour l'une des fallbacks) sont des scripts shell, je recommande de les inclure dans votre application et si l'appel which xdg-open
échoue, ajoutez-les à la variable temporaire PATH dans votre environnement de sous-programmes et appelez-les. Si xdg-open échoue, je recommanderais de lancer une exception avec un message d'erreur à partir de ce qui est sorti sur stderr et d'attraper l'exception et d'imprimer/afficher le message d'erreur.
Je voudrais ignorer la solution de bureau java awt car le bug semble indiquer qu'ils ne prévoient pas de prendre en charge des postes de travail non-gnome de sitôt.
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
S'il vous plaît envisager d'ajouter quelques détails à votre réponse. –
Je crois que la méthode la plus simple serait d'utiliser Python:
python -m webbrowser "http://www.example.com/"
fonctionne comme un charme.aussi cross plate-forme (au moins fonctionne sur mac & linux) –
Sur les distributions qui viennent avec la commande ouverte,
$ open http://www.google.com
Sur Ubuntu 16.04 cela ne fonctionne pas car il essaie d'ouvrir le fichier. – omikron
- 1. code Javascript pour ouvrir l'URL dans le navigateur par défaut
- 2. Comment ouvrir le navigateur par défaut
- 3. Navigateur: Ouvrir la page d'accueil par défaut
- 4. Ouvrir un dossier avec le navigateur de fichiers par défaut
- 5. Lien WebView cliquez sur ouvrir le navigateur par défaut
- 6. Comment ouvrir le navigateur par défaut de l'iPhone?
- 7. Ouvrir le navigateur par défaut depuis listView Subitem cliquer sur
- 8. Ouvrir le fichier dans l'éditeur par défaut de bash
- 9. comment laisser ruby appeler le navigateur par défaut pour ouvrir le fichier local
- 10. Invite de navigateur par défaut
- 11. Ouvrir l'URL avec IE au lieu du navigateur par défaut
- 12. URL Visual Basic Ouvrir avec navigateur par défaut
- 13. System.Uri ("") dans le navigateur par défaut?
- 14. XMLHttpRequest pour ouvrir PDF dans le navigateur
- 15. navigateur par défaut IE
- 16. Comment ouvrir le fichier html avec l'ancre (#) en C# avec le navigateur par défaut
- 17. Ouvrir le lien sortant dans iframe par défaut?
- 18. clics de lien de capture dans QtWebView et ouvrir dans le navigateur par défaut
- 19. webbrowser iframes ouvert dans le navigateur par défaut
- 20. Définition du navigateur par défaut pour ouvrir des applications flex dans Flash Builder sur Mac
- 21. Liens du webview Android ouverts dans le navigateur par défaut
- 22. webView decidePolicyForNavigationAction pour ouvrir un lien dans un navigateur par défaut
- 23. Python - Flask - ouvrir une page Web dans le navigateur par défaut
- 24. Avoir Facebook "Ouvrir" bouton ouvrir le dialogue par défaut
- 25. Comment ouvrir "file: // D: /help.html#selclass" avec le navigateur par défaut dans C#
- 26. Comment ouvrir le navigateur Web par défaut dans Windows en C?
- 27. Ouvrir une page html dans le navigateur par défaut avec VBA?
- 28. Comment ouvrir des liens à partir d'un composant TCppWebBrowser dans le navigateur par défaut du système
- 29. Charger le navigateur web par défaut
- 30. Modifier le navigateur par défaut de l'iPhone
Malheureusement pas présent dans RHEL –
Je crois http: //stackoverflow.com/a/9293402/2498188 devrait être la bonne réponse. –
@ OndraŽižka sensible-browser est aussi seulement debian, n'est-ce pas? Qu'est-ce qui fonctionnerait chez RHEL? – cmc