Contenu | Rechercher | Menus

Annonce

Ubuntu-fr.org recrute toujours de nouveaux modérateurs, avec de l'expérience.

Ubuntu 16.04 LTS
Réservez vos DVD et clé USB Ubuntu-fr (premières livraisons mi-mai)

Si vous avez des soucis pour rester connecté, déconnectez vous et reconnectez vous depuis ce lien en cochant le case
Me connecter automatiquement lors de mes prochaines visites.

M.A.J. en cours du forum possibilité de bug, nous faisons le maximum pour les résoudre au plus vite

#1 Le 16/09/2009, à 09:48

serged

oubli #!/bin/bash

Qu'est-ce que ça fait d'oublier la ligne d'en tête :

#!/bin/bash

dans un script ?

En effet, pour palier un bug d'OpenOffice 3.1.1 je m'étais fait un petit script tout bête, et avais oublié (bêtement)  le #!/bin/bash

Lancé à partir de la console, il fonctionnait quand même.

Lancé depuis Thunderbird, il ne se passait rien.

Pourquoi cette différence de comportement ?

PS: Le "script" :

#!/bin/bash
# Forcer OpenOffice à ouvrir un PPS en mode édition :
soffice -impress -n "$1"

Linux-Mint Rosa 64 (Cinnamon) sur ASUS F2A55/AMD A8-5600K APU

Hors ligne

#2 Le 16/09/2009, à 09:54

iuchiban

Re : oubli #!/bin/bash

Salut,

En fait la première ligne commencant par #! (shebang http://en.wikipedia.org/wiki/Shebang_%28Unix%29) indique quelle est l'interpréteur à utiliser.

Dans ton cas, ça indique au système d'utiliser le shell bash lorsque tu lances le script via :

./TonScript.sh

Tu peux enlever la ligne et lancer via :

bash TonScript.sh

Comme dans ta console, le shell par défaut doit être bash, il l'interprète correctement, malgré l'absence de #!.
Thunderbird prend le shell standard sh et ne comprend donc pas le script.

Dernière modification par iuchiban (Le 16/09/2009, à 09:56)


C'est depuis que Chuck Norris a laissé la vie sauve à un manchot que l'on dit que Linux est libre.

Chuck Norris n'a pas besoin d'éditer son premier message pour ajouter [Résolu]. Chuck Norris est toujours [Résolu], quoi qu'il arrive.

Hors ligne