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 :

(bash) petit souci avec un tableau


Sujet :

Shell et commandes GNU

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 101
    Points : 56
    Points
    56
    Par défaut (bash) petit souci avec un tableau
    bonjour

    plutot qu'un long discours:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
       read chemin
       cd $chemin
       i='0'
       declare -a cheminnamefile
       find $chemin -type f -name '*.xxx' | while read linex;
       do
          cheminnamefile[$i]=$linex
          echo "$i - ${cheminnamefile[i]}"
          i=$((i+1))
       done
       echo "${cheminnamefile[*]}"
    resulat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    0 - /home/nc/java/test1.xxx
    1 - /home/nc/java/test2.xxx
    2 - /home/nc/java/test5.xxx
    3 - /home/nc/java/test3.xxx
    4 - /home/nc/java/test4.xxx
    5 - /home/nc/java/test0.xxx

    le probleme, sortie de la boucle mon tableau est vide, j'ai vue sur le net qu'une boucle est une sorte de sous shell, mais pas trouver comment faire pour que mon tableau soit entre"" global

    merci d'avance pour votre aide

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 392
    Points
    19 392
    Par défaut
    bonjour lrgtk,

    les pipes s'exécutent dans un sous-shell, cela implique que, sorti du sous-shell, les variables qui y sont affectées n'existent pas pour le processus parent (le script).

    on peut faire plus simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    read chemin
    cheminnamefile=( $(find $chemin -type f -name "*.xxx") )
    printf '%s\n' "${cheminnamefile[@]}"
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 101
    Points : 56
    Points
    56
    Par défaut
    merci N_BaH ça fonctionne

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

Discussions similaires

  1. [XL-2007] petit souci avec un tableau croisé dynamique
    Par AAffy dans le forum Excel
    Réponses: 7
    Dernier message: 13/04/2014, 12h54
  2. Petit soucis avec un tableau de structures
    Par OVpex dans le forum Débuter
    Réponses: 4
    Dernier message: 22/04/2013, 15h51
  3. Réponses: 10
    Dernier message: 26/10/2006, 12h25
  4. petit souci avec des variables avec des fonctions psql
    Par dust62 dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 02/04/2005, 13h45
  5. [DEBUTANT] petits soucis avec un prgm de chat
    Par LechucK dans le forum MFC
    Réponses: 8
    Dernier message: 19/01/2004, 16h52

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