Aller au contenu

script pour décomprésser un fichier.


adiloos98

Sujets conseillés

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.

Lien vers le commentaire
Partager sur d’autres sites

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.

Lien vers le commentaire
Partager sur d’autres sites

mais nonnn :shutup:

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.

Lien vers le commentaire
Partager sur d’autres sites

et un truc du genre?

#!/bin/bash 
#decomp.sh
cd /home/adil/
for i in `ls /home/adil/10.81.*`
do
tar xf 'ls -tr $i/config-* | tail -1'
done

Modifié par steph29
Lien vers le commentaire
Partager sur d’autres sites

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???

Lien vers le commentaire
Partager sur d’autres sites

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..

Lien vers le commentaire
Partager sur d’autres sites

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/bash
cd /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. :P

Dan

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...