IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

[Shell]Find dans une variable


Sujet :

Shell et commandes GNU

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 17
    Points : 12
    Points
    12
    Par défaut [Shell]Find dans une variable
    Bonjour le forum,

    bon j'avoue dès maintenant que je suis un gros novice du shell ...

    du coup pour mon soucis, j’essaie de stocker une commande find dans une variable, et je souhaiterais ensuite faire une sorte de contrôle sur la variable, à savoir si ma commande find a trouvée des résultats ... sauf que pour l'instant mes essais ne marchent pas ! j’obtiens toujours :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    maVar=`find $EMPL -mtime +$RETENTION -type f -name "*.xml" -exec rm -f {} +`
    echo "variable : " $maVar
    et quand j'exécute :
    variable :
    sans rien derrière ...

    J'aimerais si possible que quelqu'un m'explique si :
    - je me suis trompé dans l'écriture de mon find dans une variable
    - Le cas contraire, comment contrôler une variable avec un find à l'intérieur ...

    D'avance merci

  2. #2
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Salut,

    Dans la mesure où tu supprimes tout (-exec rm -f {} +), normal que ta variable soit vide

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 17
    Points : 12
    Points
    12
    Par défaut
    Salut zipe31,

    merci de ta réponse, j'aurais dû mettre autre chose, enfaite plus exactement c'est cette commande que je lance :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    maVar=`find $EMPL -mtime +$RETENTION -type f -name "*.xml"  -exec echo "Le" "${dateJour}" "Suppression du fichier : " "rm -f {}" \; > ${workFolder}/logs/${LOGFILE} 2>&1`
    echo "variable : " $maVar
    et là le soucis est pareil je n'ai rien dans ma variable ...

    edit :

    Je viens de remanier l'écriture de ma variable maVar comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    maVar=$(find $EMPL -mtime +$RETENTION -type f -name "*.xml"  -exec echo "Le" "${dateJour}" "Suppression du fichier : " "rm -f {}" \; > ${workFolder}/logs/${LOGFILE} 2>&1)
    echo $maVar | wc -c
    maintenant le résultat de maVar est 1! pourquoi 1 !? j'ai eu beau changé l'extension de recherche j'ai eu quand même en résultat 1 ?

  4. #4
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Citation Envoyé par yassoux Voir le message
    et là le soucis est pareil je n'ai rien dans ma variable ...
    Normal dans la mesure où tu rediriges tout (stdout et stderr) vers un ficher de log

    maintenant le résultat de maVar est 1! pourquoi 1 !? j'ai eu beau changé l'extension de recherche j'ai eu quand même en résultat 1 ?
    Normal aussi, à partir du moment où tu as initialisé ta variable, elle n'est plus vide, même si elle ne contient rien

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 17
    Points : 12
    Points
    12
    Par défaut
    Merci de ces compléments,

    enfaite j'avais besoin de connaitre le code retour de mes commandes,

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. le résultat du 'find' dans une variable
    Par Bat91 dans le forum Shell et commandes GNU
    Réponses: 11
    Dernier message: 02/09/2010, 15h08
  2. Réponses: 3
    Dernier message: 28/05/2009, 16h27
  3. shell script: placer une variable dans le clavier
    Par kaukos dans le forum Linux
    Réponses: 6
    Dernier message: 30/06/2007, 08h42
  4. Réponses: 5
    Dernier message: 08/08/2006, 01h02
  5. Shell: récupérer le bon nom de fichier dans une variable
    Par claralavraie dans le forum Linux
    Réponses: 1
    Dernier message: 10/01/2006, 12h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo