FORUM Tom's Hardware » Le monde de Linux » Autre » La commande ifexist
 

La commande ifexist

Il y a 289 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici
Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : La commande ifexist
 
Plus d'informations

Voila je viens de creer un petit script de sauvegarde de mes fichiers de conf et j'aimerai un peu plus le developper afin de ne pas avoir de message d'erreur meme si le script marche bien.  
 
voila mon script:
 
--------------------------
 
#! /bin/sh
 
# Mise en place des variables.
variable1=/mnt/win-d/Linux/sauvegarde/sav/etc/samba
variable2=/mnt/win-d/Linux/sauvegarde/sav/etc/httpd/conf
variable3=/mnt/win-d/Linux/sauvegarde/sav/etc/
echo "Variables [OK]"
 
#Creation Backup
mkdir /mnt/win-d/Linux/sauvegarde/sav-old
rm -r /mnt/win-d/Linux/sauvegarde/sav-old
mkdir /mnt/win-d/Linux/sauvegarde/sav
mkdir /mnt/win-d/Linux/sauvegarde/sav-old
cp -bR /mnt/win-d/Linux/sauvegarde/sav/* /mnt/win-d/Linux/sauvegarde/sav-old
echo "Backup [OK]"
 
#Suppression des anciens fichiers
rm -r /mnt/win-d/Linux/sauvegarde/sav
echo "Ancien Backup [OK]"
 
#Creation de l'arborescence.
mkdir /mnt/win-d/Linux/sauvegarde/sav
mkdir /mnt/win-d/Linux/sauvegarde/sav/etc
mkdir /mnt/win-d/Linux/sauvegarde/sav/etc/samba
mkdir /mnt/win-d/Linux/sauvegarde/sav/etc/httpd
mkdir /mnt/win-d/Linux/sauvegarde/sav/etc/httpd/conf
echo "Dossiers crees"
 
#Copie des fichiers de configuration
cp /etc/samba/smb.conf $variable1
cp /etc/httpd/conf/httpd.conf $variable2
cp /etc/proftpd.conf $variable3
echo "Fichiers sauvegardes"
 
--------------------------
 
J'aimerai utiliser une commande dans le genre de ifexist afin que les dossier creer lors du "#Creation Backup" soit: (sav et sav-old)
ne m'indique pas une erreur lorsque je lance le script alors que les dossier sont deja creer.
Et donc par la meme alleger le script.
 
Je penssai a un truc du genre ifexist nomdudossier alors ne pas le creer et passez a l'etape suivante.
Il me faudrai donc alors creer des systeme d'etape genre goto sous dos masi je ne sait pas si c'ets le meme genre sous linux.
 
Je suis novice cepandant en script et donc j'utilise des commandes simples et comprehensible par moi.
SVP: evitez de me sortir des comamndes de script du fin fond de l'espace auquel je ne comprend pas grand chose ou bien expliquez les moi en meme temps, histoire de faire une pierre deux coups :p
 
Je vous remercie pour toutes l'aide que vous pourriez m'apportez.

xam
Un polak venu voler vot\'job :o
Plus d'informations
Plus d'informations

justement je l'ai lu ce tuto masi je n'ai absolument rien compit.
il me parle then etc, je debute et rien que ca ca me pete le cervo.
 
la solution etait mkdir -p et comem cela ca ne prend pas en compte l'erreur.

# kill -9 `pidof sun`
Plus d'informations

Code :
  1. if [ ! -d /le/repertoire ] ; then mkdir /le/repertoire ; fi


 
-d test si le répertoire existe, ensuite on inverse le résultat obtenu, et on fais notre mkdir si le dossier n'existe pas.


Message édité par Deather2 le 26-11-2004 à 17:40:43
Plus d'informations

Meric pour l'explication

# kill -9 `pidof sun`
Plus d'informations

Pour ta culture perso, mkdir -p permet de créer plusieurs dossier d'un coup, par exemple:
mkdir /prout/haha
si /prout n'existe pas, il fera une erreur
mkdir -p /prout/haha
si /prout n'existe pas, il le créera, puis créera haha dedans ;)

Plus d'informations

oki ouai donc avec -p on peut creer toute une arborescence d'un seul coup.
 
Je peux donc remplacer:

Citation :

#Creation de l'arborescence.  
mkdir /mnt/win-d/Linux/sauvegarde/sav  
mkdir /mnt/win-d/Linux/sauvegarde/sav/etc  
mkdir /mnt/win-d/Linux/sauvegarde/sav/etc/samba  
mkdir /mnt/win-d/Linux/sauvegarde/sav/etc/httpd  
mkdir /mnt/win-d/Linux/sauvegarde/sav/etc/httpd/conf  


par:

Citation :

mkdir -p /mnt/win-d/Linux/sauvegarde/sav/etc/httpd/conf  
mkdir -p /mnt/win-d/Linux/sauvegarde/sav/etc/samba  


 
Ok merci a vous je vais continuer a bosser cela.


Message édité par cortx le 29-11-2004 à 09:15:57
# kill -9 `pidof sun`
Plus d'informations

Tout à fais :)
En ce qui concerne le test avec -d, sache que tu peux tester si un fichier est executable avec -x, si un fichier existe avec -f je crois, et sûrement d'autres.
Consulte le man page de bash [:grut] (bon courage et bonne migraine :D)

Plus d'informations

ouai j'ai commencer, rien qu'au nb de ligne je vais passer am journee de demain a essayer d'assimiler une partie.
 
merci pour le coup de pouce.

# kill -9 `pidof sun`
Plus d'informations

Bah sinon y'a une super explication sur le site de lea-linux, comme toujours :)


Aller à :
Ajouter une réponse
  FORUM Tom's Hardware » Le monde de Linux » Autre » La commande ifexist
 

Annonces Google
Publicité
Les ressources relatives