Re: Pbl de script

2006-05-17 Par sujet Frédéric Bothamy
* Cédric LE BRIS <[EMAIL PROTECTED]> [2006-05-17 15:15] :

[...]

> Par contre j'aimerais qu'il crée un répertoire dans /tmp
>  un repertoire nommé bck, mais qu'il ne le crée QUE si il n'existe pas...pour 
> éviter les plantage
> Qq à une solution pour ce genre de petit test??

Plus simple qu'un test :

mkdir -p /tmp/bck


Fred

-- 
Comment poser les questions intelligemment
http://www.gnurou.org/Writing/SmartQuestionsFr
Comment signaler efficacement un bogue
http://www.chiark.greenend.org.uk/~sgtatham/bugs-fr.html


-- 
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench   
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Pbl de script

2006-05-17 Par sujet Christophe Diaz

Cédric LE BRIS a écrit :

Je cherche à créer un script qui fait sauvegarde mon repertoire /etc

=

#! /bin/sh


tar cfz /tmp/bck/bck_etc_mx.tgz /etc/
===


Par contre j'aimerais qu'il crée un répertoire dans /tmp
 un repertoire nommé bck, mais qu'il ne le crée QUE si il n'existe pas...pour 
éviter les plantage
Qq à une solution pour ce genre de petit test??

Je suis un peu perdu avec les scripts Shell...


merci




Bonjour,

A priori ceci devrait marcher:

if [ ! -d /chemin/vers/mon/repertoire/ ] ;
then
mkdir /chemin/vers/mon/repertoire/

fi



Bon amusement
Christophe




Re: Pbl de script

2006-05-17 Par sujet Cyril Mougel

Cédric LE BRIS wrote:

Je cherche à créer un script qui fait sauvegarde mon repertoire /etc

=

#! /bin/sh


tar cfz /tmp/bck/bck_etc_mx.tgz /etc/
===


Par contre j'aimerais qu'il crée un répertoire dans /tmp
 un repertoire nommé bck, mais qu'il ne le crée QUE si il n'existe pas...pour 
éviter les plantage
Qq à une solution pour ce genre de petit test??

Je suis un peu perdu avec les scripts Shell...


Voici un exemple qui marche :

#! /bin/bash

if [ -e "/tmp/test" ]
then
   echo 'oui'
fi
echo 'non'

Ainsi pour tester :
Sextans-22:43:14:/tmp$ ls tes*
test.sh
Sextans-22:43:19:/tmp$ ./test.sh
nonSextans-22:43:36:/tmp$ mkdir test
Sextans-22:43:48:/tmp$ ./test.sh
oui
non

Sinon, cf :
man [
man if

Bonne chance

--
Cyril Mougel


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench   
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et

"Reply-To:"

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Pbl de script

2006-05-17 Par sujet Jacques L'helgoualc'h
Jacques L'helgoualc'h a écrit, mercredi 17 mai 2006, à 21:37 :
[...]
> TMPDIR=/tmp/bck
> 
> if [ ! -d "$TMPDIR" ]
>mkdir "$TMPDIR"
> fi

Aaargh,

if [ ! -d "$TMPDIR" ]; then
   mkdir "$TMPDIR"
fi

-- 
Jacques L'helgoualc'h


-- 
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench   
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Pbl de script

2006-05-17 Par sujet Jacques L'helgoualc'h
Cédric LE BRIS a écrit, mercredi 17 mai 2006, à 15:15 :
> Je cherche à créer un script qui fait sauvegarde mon repertoire /etc
> 
> =
> 
> #! /bin/sh
> 
> 
> tar cfz /tmp/bck/bck_etc_mx.tgz /etc/
> ===
> 
> 
> Par contre j'aimerais qu'il crée un répertoire dans /tmp un repertoire
> nommé bck, mais qu'il ne le  crée QUE si il n'existe pas...pour éviter
> les plantage Qq à une solution pour ce genre de petit test??

TMPDIR=/tmp/bck

if [ ! -d "$TMPDIR" ]
   mkdir "$TMPDIR"
fi

Bon, il faudrait aussi tester si ça existe sans être un répertoire.

> Je suis un peu perdu avec les scripts Shell...

Ben, ce ne  sont pas les howtos  qui manquent ? Il y  a aussi l'advanced
bash scripting guide (traduit sur http://abs.traduc.org/), etc.

Voir aussi des exemples dans /etc :)

> merci

de rien,
-- 
Jacques L'helgoualc'h


-- 
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench   
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Pbl de script

2006-05-17 Par sujet Xavier Oswald
On 15:15 Wed 17 May , Cédric LE BRIS wrote:
> Je cherche à créer un script qui fait sauvegarde mon repertoire /etc
> 
> =
> 
> #! /bin/sh
> 
> 
> tar cfz /tmp/bck/bck_etc_mx.tgz /etc/
> ===
> 
> 
> Par contre j'aimerais qu'il crée un répertoire dans /tmp

Ben tu fais une copie avec cp :)

>  un repertoire nommé bck, mais qu'il ne le crée QUE si il n'existe pas...pour 
> éviter les plantage
> Qq à une solution pour ce genre de petit test??

Pour tester si un fichier existe : 

if [ -f monfichier ]

fi

-r file Check if file is readable.
-w file Check if file is writable.
-x file Check if we have execute access to file.
-f file Check if file is an ordinary file (as opposed to a directory, a
device special file, etc.)
-s file Check if file has size greater than 0.
-d file Check if file is a directory.
-e file Check if file exists. Is true even if file is a directory.



Amicalement,
-- 
===
  ,''`.  Xavier Oswald <[EMAIL PROTECTED]>
 : :' :  GNU/LINUX Debian & Debian-Edu Contributor
 `. `'   GnuPG Key ID 0x88BBB51E 
   `-938D D715 6915 8860 9679  4A0C A430 C6AA 88BB B51E
===


-- 
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench   
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]