Aide [Script Shell]
alexis
-
zipe31 Messages postés 38797 Statut Contributeur -
zipe31 Messages postés 38797 Statut Contributeur -
Bonjour,
Je souhaite créer un programme shell qui me permet de faire monter en charge la machine.
Je suis parti sur le principe de de faire un tar du fichier noc de le déplacer dans un dossier particulier et suite une boucle qui me permet de tar et détar x fois.
Voici le script :
----------------------------------------------------------------------------------------
#!/usr/bin/bash
$i=0
cd /
#pour pouvoir executer le tar en dehors du noc
tar -cvzf noc2.tar.gz /noc/*
#archive le dossier noc en noc2.tar.gz
mv noc2.tar.gz /home/caisse01/
#déplace le noc2 dans /home/caisse01
cd /home/caisse01/
mkdir /home/caisse01/noctest
while [i<2]; do
tar -xvzf noc2.tar.gz /home/caisse01/noctest
#extrait le noc dans /home/caisse01/noctest
rm /home/caisse01/noc2.tar.gz
#supprime l'ancienne archive
tar -cvzf noc2.tar.gz /home/caisse01/noctest/ | dd of=/home/caisse01/
#archive le répertoire /home/caisse01/noctest/*.* dans /home/caisse01
rm /home/caisse01/noctest/*
#supprime les documents contenus dans noctest
i=$(( ${i} + 1 ))
done
rm /home/caisse01/noc2.tar.gz
rm -r /home/caisse01/noctest
#supprime le dossier noctest et sont contenu
echo "test terminé."
----------------------------------------------------------------------------------------------------
Le problème c'est que j'ai toujours une erreur -bash: 2]: No such file or directory à la fin de mon tar du coup il passe la boucle et atterrit directement sur la suppression et l'écho.
Du coup j'ai testé avec une boucle until [i=2] mais à la place j'ai une erreur qui boucle :(
-bash: [i=2]: command not found
tar: /home/caisse01/noctest: ne peut être retrouvé dans l'archive.
tar: Statut d'erreur reporté d'erreurs précédentes.
rm: détruire fichier régulier '/home/caisse01/noc2.tar.gz'? y
tar: Removing leading '/' from member names
dd: ouverture de '/home/caisse01/': Is a directory
rm: ne peut évaluer par lstat() '/home/caisse01/noctest/*': No such file or directory
------------------------------------------------------------------------------------------------------
Le pauvre néophyte que je suis commence à devenir fou et a grand besoin de vous ;)
Merci d'avance,
Alexis.
Je souhaite créer un programme shell qui me permet de faire monter en charge la machine.
Je suis parti sur le principe de de faire un tar du fichier noc de le déplacer dans un dossier particulier et suite une boucle qui me permet de tar et détar x fois.
Voici le script :
----------------------------------------------------------------------------------------
#!/usr/bin/bash
$i=0
cd /
#pour pouvoir executer le tar en dehors du noc
tar -cvzf noc2.tar.gz /noc/*
#archive le dossier noc en noc2.tar.gz
mv noc2.tar.gz /home/caisse01/
#déplace le noc2 dans /home/caisse01
cd /home/caisse01/
mkdir /home/caisse01/noctest
while [i<2]; do
tar -xvzf noc2.tar.gz /home/caisse01/noctest
#extrait le noc dans /home/caisse01/noctest
rm /home/caisse01/noc2.tar.gz
#supprime l'ancienne archive
tar -cvzf noc2.tar.gz /home/caisse01/noctest/ | dd of=/home/caisse01/
#archive le répertoire /home/caisse01/noctest/*.* dans /home/caisse01
rm /home/caisse01/noctest/*
#supprime les documents contenus dans noctest
i=$(( ${i} + 1 ))
done
rm /home/caisse01/noc2.tar.gz
rm -r /home/caisse01/noctest
#supprime le dossier noctest et sont contenu
echo "test terminé."
----------------------------------------------------------------------------------------------------
Le problème c'est que j'ai toujours une erreur -bash: 2]: No such file or directory à la fin de mon tar du coup il passe la boucle et atterrit directement sur la suppression et l'écho.
Du coup j'ai testé avec une boucle until [i=2] mais à la place j'ai une erreur qui boucle :(
-bash: [i=2]: command not found
tar: /home/caisse01/noctest: ne peut être retrouvé dans l'archive.
tar: Statut d'erreur reporté d'erreurs précédentes.
rm: détruire fichier régulier '/home/caisse01/noc2.tar.gz'? y
tar: Removing leading '/' from member names
dd: ouverture de '/home/caisse01/': Is a directory
rm: ne peut évaluer par lstat() '/home/caisse01/noctest/*': No such file or directory
------------------------------------------------------------------------------------------------------
Le pauvre néophyte que je suis commence à devenir fou et a grand besoin de vous ;)
Merci d'avance,
Alexis.
A voir également:
- Aide [Script Shell]
- Classic shell - Télécharger - Personnalisation
- Script vidéo youtube - Guide
- Ghost script - Télécharger - Polices de caractères
- Mas script - Accueil - Windows
- Script cmd - Guide