lancement d'un script
Le
Jean-Jacques Gerbaud

Bonjour à tous,
J'ai un script que je dois lancer avec la commande
/home/user/./script.
Je souhaiterais pouvoir le mettre dans un lanceur sur mon bureau ou dans
la barre des tâches.
J'ai bien fait un lanceur mais lorsque je clique sur son icone, c'est le
script qui s'ouvre et pas son contenu !
Une aide de votre part serait très appréciée.
Merci
(Je suis sous LinuxMint Maya) (et elle marche très bien ! :-))
--
JJG
Linux ? Y a moins bien mais c'est plus cher !
http://www.sky.fm/play/classical
http://www.radiosuisseclassique.ch/fr
J'ai un script que je dois lancer avec la commande
/home/user/./script.
Je souhaiterais pouvoir le mettre dans un lanceur sur mon bureau ou dans
la barre des tâches.
J'ai bien fait un lanceur mais lorsque je clique sur son icone, c'est le
script qui s'ouvre et pas son contenu !
Une aide de votre part serait très appréciée.
Merci
(Je suis sous LinuxMint Maya) (et elle marche très bien ! :-))
--
JJG
Linux ? Y a moins bien mais c'est plus cher !
http://www.sky.fm/play/classical
http://www.radiosuisseclassique.ch/fr
Le 25/02/2014 17:26, Jean-Jacques Gerbaud a écrit :
C'est bizarre ce « . », on est d'accord que tu peux tout
simplement utiliser :
/home/user/script
Sinon, c'est un script dans quel langage ?
Désolé, je n'ai pas compris « c'est le script qui s'ouvre et pas son contenu ».
C'est un éditeur qui s'ouvre affichant le contenu du script ?
J'ignore tout de Linux Mint etc. mais j'imagine qu'à un moment
tu as renseigné un champ dans lequel tu as mis :
/home/user/script
Par exemple si ton script est un script bash, essaye peut-être
de mettre :
/bin/bash /home/user/script
--
François Lafont
il est en bash. Et, chez moi, tous les scripts shell se lancent avec le
"." devant tel que je le dis ci-dessus /home/user/./script.
Mais j'ai modifié mon $PATH et mon fichier .bashrc pour que le script se
lance sans le point, tel que tu le dis ci-dessus.
oui !!!
oui, bien sûr, et modifié les droits également pour lecture+écriture par
le propriétaire.
essayé mais le script ne se lance pas
Une autre piste ?
--
JJG
Linux ? Y a moins bien mais c'est plus cher !
http://www.sky.fm/play/classical
http://www.radiosuisseclassique.ch/fr
Le script doit etre executable ...
Moi, j'ai un script pour lancer un video, et ca marche ...
--
--
What's on Shortwave guide: choose an hour, go!
http://shortwave.tk
700+ Radio Stations on SW http://swstations.tk
300+ languages on SW http://radiolanguages.tk
Du coup un chmod 755 le script en question devrait faire l'affaire non ?
Ça par exemple ! Que les scripts se lancent avec un tel chemin, ok mais
que ça ne marche pas avec « /home/user/script » c'est vraiment étrange.
Le script est-il bien exécutable ? Un « ls -l /home/user/script » dans
un terminal pourrait nous éclairer.
Je suis très surpris là aussi. Normalement, le PATH intervient quand
on veut lancer une commande par son nom. Mais avec un chemin absolu
comme ici, normalement le PATH importe peu. Il y a un truc qui m'échappe.
Comme indiqué par Marc et Pascal dans leur message, c'est surtout
les droits en lecture et en exécution pour celui qui sera censé
lancer le script qui comptent.
--
François Lafont
Bonsoir, François, Marc et Pascal :
voici le résultat de la commande "ls -l" (dans mon /home/user
-rwxr--r-- 1 elviejo elviejo 6186 févr. 25 13:19 planning
Je ne sais pas s'il y a matière à surprise ! Mais j'ai toujours lancé
mes scripts avec
la commande
/chemin/./script
Après avoir modifié mon $PATH et mon ~.bashrc
je peux le lancer avec la commande
/chemin/script
la réponse est donnée ci-dessus : lecture, écriture, exécution et je
suis le propriétaire du fichier "planning"
Une autre piste ?
--
JJG
Linux ? Y a moins bien mais c'est plus cher !
http://www.sky.fm/play/classical
http://www.radiosuisseclassique.ch/fr
Bonsoir, François, Marc et Pascal :
voici le résultat de la commande "ls -l" (dans mon /home/user
-rwxr--r-- 1 elviejo elviejo 6186 févr. 25 13:19 planning
Je ne sais pas s'il y a matière à surprise ! Mais j'ai toujours lancé
mes scripts avec
la commande
/chemin/./script
Après avoir modifié mon $PATH et mon ~.bashrc
je peux le lancer avec la commande
/chemin/script
la réponse est donnée ci-dessus : lecture, écriture, exécution et je
suis le propriétaire du fichier "planning"
Une autre piste ?
--
JJG
Linux ? Y a moins bien mais c'est plus cher !
http://www.sky.fm/play/classical
http://www.radiosuisseclassique.ch/fr
Le 26/02/2014 01:15, Jean-Jacques Gerbaud répondait à François Lafont :
;-)
Personnellement, je trouverais encore plus étrange que ça
fonctionne avec /home/user/script tout en ne fonctionnant pas
avec /home/user/./script !
Ok, je suppose que ton lanceur appartient lui aussi à elviejo ?
Sinon il faudrait faire un « chmod a+x planning » pour que les autres
utilisateurs puissent lancer ce script.
Plus important encore, quelle est la première ligne de ton script ?
Est-ce bien la ligne suivante :
#!/bin/bash
... ?
Cordialement,
--
Olivier Miakinen
Ça semble bon. On est d'accord que le fichier "planning" se
trouve bien à la racine du répertoire « /home/elviejo » ?
C'est pas incorrect comme manière d'appeler un script, c'est même en
principe équivalent à « /chemin/script ». Ce qui est curieux du coup
c'est que « /chemin/script » ne fonctionne pas si j'ai bien compris ce que
tu as dit, sauf si tu bidouilles ton PATH. Là, franchement, il y a un
loup... et peut-être que c'est lié à ton problème. Dans un terminal, ça
raconte quoi si tu n'as pas modifié ton PATH et si tu fais toutes ces
commandes :
echo "$PATH"
ls -l /home/elviejo/planning
/home/elviejo/planning
(faire un copié-collé du terminal avec les commandes et le prompt inclus)
Quelles modifs exactement au niveau du PATH et du ~/.bashrc ?
Pour moi, ton histoire d'appel via le chemin absolu qui ne marche
pas sauf en modifiant le PATH est étrange et est peut-être une
piste, mais sans certitude bien sûr. En tout cas, c'est déjà un
problème en soit.
--
François Lafont
Pour moi, c'est ni plus ni moins étrange dans le sens où les
deux devraient se comporter identiquement (marcher tous les 2 ou
bien pas marcher tous les 2). Mais bon, on ne va pas jouer sur
les mots. :-)
Pour moi, point or not point, c'est le même fichier :
01:39 ~
$ ls -i /home/francois/missfont.log
57149207 /home/francois/missfont.log
01:39 ~
$ ls -i /home/francois/./missfont.log
57149207 /home/francois/./missfont.log
01:39 ~
$ ls -i /home/francois/././missfont.log
57149207 /home/francois/././missfont.log
01:39 ~
$ ls -i /home/francois/./././missfont.log
57149207 /home/francois/./././missfont.log
Dans tous les cas, c'est le même fichier.
Ah, il me vient idée. Peut-être que le fichier s'exécute
effectivement dans les 2 cas mais peut-être que dans un des cas
il ne fait rien et Jean-Jacques pense qu'il ne s'exécute
pas alors que si.
Par exemple, le script bash peut éventuellement dépendre de la
façon dont il est appelé en faisant des traitements au niveau
de la variable "$0" qui le rendrait dépendant du chemin utilisé.
Peut-être que ce script est dépendant aussi du PATH etc.
--
François Lafont