Bonjour,
Tout d'abord, merci d'avance pour le temps que vous m'aurez consacré.
J'aimerais savoir s'il existe une option sur AIX qui remplacerait l'option -I de la commande tar cvf sur Solaris ? Pour information, l'option -I permet d'inclure les fichiers contenus dans une liste sous forme d'un fichier .txt ou .csv.
Pour résumer : dans un script .ksh, je fais générer un second script qui va faire la sauvegarde des fichiers présents dans une liste, avec :
* genere_deploiement.sh le script de génération du script de déploiement,
* deploiement.sh, le script de déploiement,
* liste_files.csv, le fichier dans lequel il y a la liste des fichiers à sauvegarder.
Voici donc le code de genere_deploiement.sh sous Solaris :
J'obtiens ainsi le script de déploiement dont voici le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 # Declaration des variables #-------------------------------------------------- LSTFILE=liste_files.csv SCRDEPL=deploiement.sh # Traitement echo "echo \"$(cat $LSTFILE)\" | tr ' ' ' ' > liste_files.txt" > $SCRDEPL echo "tar cvf BackUp.bak.tar -I liste_files.txt" >> $SCRDEPL echo "gzip BackUp.bak.tar" >> $SCRDEPL echo "rm -f liste_files.txt" >> $SCRDEPL
Mais sous AIX, j'ai tenté de remplacer le code par :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 echo "$VAR1/Rep4/Rep5/Test.sh $VAR2/RepBis3/RepBis4/Test2.sh" | tr ' ' ' ' > liste_files.txt" tar cvf BackUp.bak.tar -I liste_files.txt gzip BackUp.bak.tar rm -f liste_files.txt
Ma solution marche tant que je n'ai qu'un seul fichier dans liste_files.csv, dès le second fichier, il ne l'inclut pas dans le fichier taré mais il l'exécute car le code du fichier généré est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 # Declaration des variables #-------------------------------------------------- LSTFILE=liste_files.csv SCRDEPL=deploiement.sh # Traitement echo "echo \"$(cat $LSTFILE)\" | tr ' ' ' ' > liste_files.txt" > $SCRDEPL echo "eval tar cvf BackUp.bak.tar $(<liste_files.txt)" >> $SCRDEPL echo "gzip BackUp.bak.tar" >> $SCRDEPL echo "rm -f liste_files.txt" >> $SCRDEPL
Je vous remercie d'avance pour l'aide que vous m'apporterez.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 echo "$VAR1/Rep4/Rep5/Test.sh $VAR2/RepBis3/RepBis4/Test2.sh" | tr ' ' ' ' > liste_files.txt" eval tar cvf BackUp.bak.tar $VAR1/Rep4/Rep5/Test.sh $VAR2/RepBis3/RepBis4/Test2.sh gzip BackUp.bak.tar rm -f liste_files.txt
Partager