web-dev-qa-db-fra.com

SHELL script pour ouvrir une URL

Quelqu'un peut-il m'aider à écrire un script Shell simple (par exemple, script.sh), afin de pouvoir passer une URL en argument lors de l'exécution Je veux qu'un navigateur commence avec la page ouverte sur cette URL.

Je veux écrire la commande dans le script pour ouvrir un navigateur et ouvrir l'URL donnée en argument.

Cela peut sembler simple. mais j'essaye depuis 2 heures.

12
Rishav Sharan

Méthode1

Supposons que votre navigateur est firefox et votre script urlopener est

#!/bin/bash
firefox "$1"

Courez comme

./urlopener "https://google.com"

Sidenote

Remplacez firefox par votre navigateur


Méthode2

Comme [@ sato-katsura] mentionné dans le commentaire, dans * nixes, vous pouvez utiliser une application appelée xdg-open. Par exemple 

xdg-open https://google.com

Le manuel pour xdg-open dit

xdg-open - ouvre un fichier ou une URL dans l'application préférée de l'utilisateur xdg-open ouvre un fichier ou une URL dans l'application préférée de l'utilisateur. Si un L'URL est fournie. L'URL sera ouverte dans le site Web préféré de l'utilisateur navigateur.
Si un fichier est fourni, le fichier sera ouvert dans le fichier application préférée pour les fichiers de ce type. Fichier de support xdg-open, URL ftp, http et https.

Comme [this] answer indique que vous pouvez changer votre navigateur préféré en utilisant, par exemple:

xdg-settings set default-web-browser firefox.desktop

ou

xdg-settings set default-web-browser chromium-browser.desktop
8
sjsam

Vous n'avez pas besoin d'écrire un script pour ça. Il existe quelques outils que vous pouvez utiliser en fonction de votre système d'exploitation.

Linux

xdg-open est disponible dans la plupart des distributions Linux. Il ouvre un fichier ou une URL dans le navigateur préféré de l'utilisateur (configurable avec xdg-settings).

xdg-open https://stackoverflow.com

macOS

open ouvre les fichiers et les URL dans l'application par défaut ou spécifiée.

open https://stackoverflow.com
open -a Firefox https://stackoverflow.com

Multiplateforme

Le module webbrowser de Python fonctionne sur de nombreuses plates-formes. 

python -mwebbrowser https://stackoverflow.com

13
Eugene Yarmash

Pour Windows,

Vous pouvez simplement écrire start filename_or_URL

start https://www.google.com

Cela ouvrira l'URL dans un navigateur par défaut. Si vous voulez spécifier le navigateur, vous pouvez écrire

start chrome https://www.google.com
start firefox https://www.google.com

si vous souhaitez ouvrir plusieurs URL.

start chrome "www.google.com" "www.bing.com"

Testé avec les fichiers .sh (fichier shellscript) et .bat.

7
Sangram Nandkhile

Sous MacOS, open fonctionne. Ainsi, open "$1" ouvrira l'URL transmise dans Chrome, si Chrome est le navigateur par défaut.

5
Roc Boronat

Si vous voulez une solution cross-os et êtes à l'aise avec Python (3)

Essaye ça:

import webbrowser

webbrowser.open('https://yoururl.com')

Ou en terminal/cmd:

python -m webbrowser -t "https://yoururl.com"
0
trve.fa7ad