adiloos98 Posté 22 Mai 2008 Posté 22 Mai 2008 bonjour j'ai essayé d'executer une commande qui me permettra de choisir le dérnier backup pour chaque répertoire afin de le décomprésser, la commande est: tar xf 'ls -tr config-* | tail -1 ' en faite la commande ça marche,mais une fois je la fais intérger dans un script ça marche plus??? le script est : #!/bin/bash #decomp.sh path="/home/adil/10.81.*/ tar xf 'ls -tr config-* | tail -1 ' je porte à votre connaissance que les répertoire existent dans /home/adil/10.81... c a d 10.81.0.2 et 10.81.0.9 et 10.81.06 .................. est ce que j'ai un probléme au niveu du chemin??? merci pour vos aides.
Kioob Posté 22 Mai 2008 Posté 22 Mai 2008 Hello, tu fais ton ls et ton tar à partir du dossier courant, donc la commande dépendra du dossier depuis lequel elle est lancée ; est-ce bien ce que tu cherches à faire ? Si ce n'est pas le cas, essaye de remplacer ton path=XXX par un simple cd XXX.
adiloos98 Posté 23 Mai 2008 Auteur Posté 23 Mai 2008 merci beaucoup ça marche trés trés bien avec la commande (cd). merci encore une fois
adiloos98 Posté 23 Mai 2008 Auteur Posté 23 Mai 2008 mais nonnn en faite j'ai fais : #!/bin/bash #decomp.sh cd /home/adil/10.81.* tar xf 'ls -tr config-* | tail -1' ça marche mais just sur le 1ere répertoire c a d (10.81.0.1) pour les répertoire qui restent ça marche plus stp c'est quoi le blem ???? désoler pour le dérangement.
steph29 Posté 23 Mai 2008 Posté 23 Mai 2008 (modifié) et un truc du genre? #!/bin/bash #decomp.shcd /home/adil/for i in `ls /home/adil/10.81.*`do tar xf 'ls -tr $i/config-* | tail -1'done Modifié 23 Mai 2008 par steph29
adiloos98 Posté 23 Mai 2008 Auteur Posté 23 Mai 2008 j'ai essayé d'exécuter le petit script ,mais ça marche pas , il m'affiche tar: ls -tr $i/config-* | tail -1 : ne peut open : aucun fichier ou répertoire de ce type........... je pense qu'il y'a toujours un blem au niveau du chemin???
steph29 Posté 23 Mai 2008 Posté 23 Mai 2008 oui le $i n'est pas interpreté.... essaie avec les `au lieu des '
adiloos98 Posté 23 Mai 2008 Auteur Posté 23 Mai 2008 ça marche pas encore j'en sais pas comment je ferai pour résoudre ce blem
steph29 Posté 23 Mai 2008 Posté 23 Mai 2008 #!/bin/bash #decomp.shcd /home/adil/for i in `ls /home/adil/10.81.*`do cd /home/adil/$i tar xf `ls -tr config-* | tail -1`done
steph29 Posté 23 Mai 2008 Posté 23 Mai 2008 pour info on est pas devant ton ecran, donc quand on me dis meme probleme... j'ai pas franchement envie d'aider... la moindre des choses est de copier les messages d'erreur retournés...* sinon ne reste pas les bras croises et fait des tests.. echo est ton ami pour voir ce que ca te retourne... prend le pb en plusieurs etapes etc..
Dan Posté 23 Mai 2008 Posté 23 Mai 2008 Tu aurais pû poster cette demande à la suite de ton premier sujet plutôt que d'en ouvrir un autre. :!: Ensuite, ce code devrait fonctionner: #!/bin/bashcd /home/adil/for i in /home/adil/10.81.*do cd $i tar xf `ls -tr config-* | tail -1`done Je te suggère d'acheter un bouquin sur le shell linux ... cela te permettra au moins de progresser seul. Ou au moins lancer une fois la commande "man sh" .... et lire ce que cela permet. Dan
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant