Mon script shell ne fait rien.

Mon script shell ne fait rien. - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 05-05-2008 à 18:56:42    

Hello

 

Voilà j'ai un script shell simple :

#!/bin/bash
cd /home/sites/supercool/www/

 

seulement voilou, parfois, je le lance, aucun message d'erreur, mais aucun changement de dossier non plus [:petrus75]

 

Où est mon erreur :(

 

'rci [:dawao]

Message cité 1 fois
Message édité par theredled le 05-05-2008 à 19:39:01

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 05-05-2008 à 18:56:42   

Reply

Marsh Posté le 05-05-2008 à 19:01:08    

#!/bin/bash
 
le "/" avant bin ...

Reply

Marsh Posté le 05-05-2008 à 19:38:52    

Il y était [:joce] je corrige, et la question reste en suspens.


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 05-05-2008 à 19:51:46    

C'est tout à fait normal que tu ne changes pas de répertoire dès que tu sors de ton script.
Quand tu lances un script avec la commande "./script.sh", le script va s'exécuter dans un processus fils,
quand il a fini et qu'il te rend la main tu reviens à ton environnement courant.
 
Pour écrire un script qui te change de répertoire dans ton processus courant, il faut écrire un script sans le shell bang de début de ligne,
tu vires ton "#!/bin/bash", ton script n'aura que la ligne "cd /home/sites/supercool/www/"
puis tu l'exécutes en faisant un "source script.sh" ou un ". script.sh", et y'a même pas besoin de le chmoder.

Reply

Marsh Posté le 05-05-2008 à 20:14:28    

theredled a écrit :

#!/bin/sh
cd /home/sites/supercool/www/
pwd



 [:aloy]


---------------
Décentralisons Internet-Bépo-Troll Bingo - "Pour adoucir le mélange, pressez trois quartiers d’orange !"
Reply

Marsh Posté le 05-05-2008 à 20:43:09    

demain j'essaye tout ça [:dawa]


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 07-05-2008 à 10:19:47    

Y'a rien à essayer, phileas_fox a tout dit. Tu ne peux pas, dans un process fil, changer le répertoire courant du processus père. Il faut faire le cd dans ton shell courant.

Reply

Marsh Posté le 07-05-2008 à 10:38:57    

Bon bah alors je vais pas essayer :(


Message édité par theredled le 07-05-2008 à 10:39:18

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 07-05-2008 à 10:40:21    

ps: comment ça se fait que parfois, ça marche quand même ?

 

(j'utilise ce script depuis un moment avec un user X (propriétaire du script), et ça marchait, c'est avec un user Y que ça marche plus)

Message cité 1 fois
Message édité par theredled le 07-05-2008 à 10:42:22

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 07-05-2008 à 10:43:44    

euh si c'est juste pour changer de répertoire, on peut utiliser un alias.
ex.:
alias site='cd /home/sites/supercool/www/'
 
:spamafote:

Reply

Marsh Posté le 07-05-2008 à 10:43:44   

Reply

Marsh Posté le 07-05-2008 à 11:08:04    

theredled a écrit :

ps: comment ça se fait que parfois, ça marche quand même ?
 
(j'utilise ce script depuis un moment avec un user X (propriétaire du script), et ça marchait, c'est avec un user Y que ça marche plus)


Ca n'a jamais pu marcher. Si ça marchait, c'est que tu faisais les choses différement. Par exemple tu appelais ton script avec ". /path/to/script" au lieu de "/path/to/script".

Reply

Marsh Posté le 07-05-2008 à 11:42:51    

matafan a écrit :


Ca n'a jamais pu marcher. Si ça marchait, c'est que tu faisais les choses différement. Par exemple tu appelais ton script avec ". /path/to/script" au lieu de "/path/to/script".


Mon dossier des scripts était dans le $PATH, donc j'appelais simplement "script"...

 

D'ailleurs, ça marche encore (pour l'user X).


Message édité par theredled le 07-05-2008 à 11:45:19

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 07-05-2008 à 11:47:18    

ogaby a écrit :

euh si c'est juste pour changer de répertoire, on peut utiliser un alias.
ex.:
alias site='cd /home/sites/supercool/www/'
 
:spamafote:


Certes, mais ça ne résout pas l'énygme :o


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 07-05-2008 à 11:53:08    

y'a pas d'énigme


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 07-05-2008 à 12:13:28    

black_lord a écrit :

y'a pas d'énigme


Alors explique-moi pourquoi ça marche avec  mon user X, c'est pas sympa de me cacher ça [:airforceone]


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:04:29    

UP.
 
Exactement dans la même thématique.
 
J'ai ce script, avec tous droits d'éxecution et de lecture et propriétaire A

Code :
  1. cd /home/sites/bubbletest/www/
  2. pwd


Ainsi que ce script, avec les mêmes droits et le même proprio :

Code :
  1. cd /home/sites/ondemand_v2/test/deploy/
  2. pwd


 
Le premier fonctionne (ça change le dossier courant), le deuxième non [:petrus75]
 
Pourquoi [:petrus75]
 
Et non jveux pas utiliser d'alias :o


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:06:43    

ça veut dire quoi "ça marche pas" ? :o


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 25-09-2009 à 15:07:18    

wedgeant a écrit :

ça veut dire quoi "ça marche pas" ? :o


Ca change pas le dossier courant.
 
Alors que l'autre oui.


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:08:31    

et l'utilisateur qui exécute le script a les droits nécessaires pour se déplacer dans le dossier et ses dossiers parents ? [:petrus dei]


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 25-09-2009 à 15:10:06    

wedgeant a écrit :

et l'utilisateur qui exécute le script a les droits nécessaires pour se déplacer dans le dossier et ses dossiers parents ? [:petrus dei]


Ben oui, à la mano ça marche :/


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:12:06    

au début de ton script, tu veux bien mettre "#! /bin/bash  -vx" ? [:opus dei]


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 25-09-2009 à 15:12:38    

ok :o


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:14:01    

Citation :


#! /bin/bash -vx
cd /home/sites/ondemand_v2/test/deploy/
+ cd /home/sites/ondemand_v2/test/deploy/
pwd
+ pwd
/home/sites/ondemand_v2/test/deploy


[:joce]


Message édité par theredled le 25-09-2009 à 15:14:18

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:15:31    

[:quardelitre]


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 25-09-2009 à 15:16:16    

N'est-ce pas :o


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:17:47    

et si tu retires -vx ? :o


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 25-09-2009 à 15:19:06    

Et que tu le remets très vite après :o


---------------
Be the one with the flames.
Reply

Marsh Posté le 25-09-2009 à 15:19:45    

Sans le -vx

Citation :


[benoit@pouet scripts]$ odcd
/home/sites/ondemand_v2/test/deploy
[benoit@pouet scripts]$


Pareil qu'au départ quoi.

Message cité 1 fois
Message édité par theredled le 25-09-2009 à 15:20:13

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:19:47    

[:parisbreizh]


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 25-09-2009 à 15:21:36    

Par contre ça marche quand je fais

 
Citation :


$ . odcd

 

Mais bon :/
(en plus je sais même pas ce que ça veux dire :o)

Message cité 1 fois
Message édité par theredled le 25-09-2009 à 15:21:58

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:21:58    

Riot a écrit :

Et que tu le remets très vite après :o


[:rofl]
 

theredled a écrit :

Pareil qu'au départ quoi.


mais tu cherches à faire quoi en fait ? [:pingouino]
parce que là ça marche, non ? [:pingouino]


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 25-09-2009 à 15:24:48    

theredled a écrit :

Par contre ça marche quand je fais
 

Citation :


$ . odcd


 
Mais bon :/
(en plus je sais même pas ce que ça veux dire :o)


à tout hasard, que te dis: find / -iname '*odcd*' (en root)


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 25-09-2009 à 15:25:20    

wedgeant a écrit :


mais tu cherches à faire quoi en fait ? [:pingouino]
parce que là ça marche, non ? [:pingouino]


 
même conclusion


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 25-09-2009 à 15:28:44    

wedgeant a écrit :


mais tu cherches à faire quoi en fait ? [:pingouino]
parce que là ça marche, non ? [:pingouino]


Euh, non [:pingouino]

 

Je veux que ça me change le répertoire courant. Là je suis dans /home/scripts, et je reste dans /home/scripts [:pingouino]
Comme s'il me lançait le script dans un processus parallèle. Mais juste ce script-là, pas l'autre qu'est quasi identique [:petrus75]

Message cité 2 fois
Message édité par theredled le 25-09-2009 à 15:29:31

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:33:06    

theredled a écrit :


Euh, non [:pingouino]
 
Je veux que ça me change le répertoire courant. Là je suis dans /home/scripts, et je reste dans /home/scripts [:pingouino]
Comme s'il me lançait le script dans un processus parallèle. Mais juste ce script-là, pas l'autre qu'est quasi identique [:petrus75]


 
mais il lance le script dans un processus parallèle  [:pingouino]


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 25-09-2009 à 15:33:30    

theredled a écrit :

Euh, non [:pingouino]
 
Je veux que ça me change le répertoire courant. Là je suis dans /home/scripts, et je reste dans /home/scripts [:pingouino]
Comme s'il me lançait le script dans un processus parallèle. Mais juste ce script-là, pas l'autre qu'est quasi identique [:petrus75]


de manière définitive ? [:pingouino dei]
genre avant le script t'es dans /home/truc et après le script t'es dans /home/trique ? [:petrus dei]


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 25-09-2009 à 15:34:03    

black_lord a écrit :

mais il lance le script dans un processus parallèle  [:pingouino]


en plus [:petrus75]

Spoiler :

mais je gardais ça pour le coup de grace :D


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 25-09-2009 à 15:43:04    

wedgeant a écrit :


de manière définitive ? [:pingouino dei]
genre avant le script t'es dans /home/truc et après le script t'es dans /home/trique ? [:petrus dei]

 

Voilà [:dawa]

 

Comme le script n°1 qui fonctionne, tu vois [:marc]

Message cité 1 fois
Message édité par theredled le 25-09-2009 à 15:43:12

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:43:31    

black_lord a écrit :


 
mais il lance le script dans un processus parallèle  [:pingouino]


Et le script n°1, pourquoi il marche ?


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 25-09-2009 à 15:45:02    

theredled a écrit :

Comme le script n°1 qui fonctionne, tu vois [:marc]


euh, mais il devrait pas, justement [:pingouino]
 

theredled a écrit :

Et le script n°1, pourquoi il marche ?


that, detective, is the right question :o


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed