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 :

Boucle for appelant plusieurs variables


Sujet :

Shell et commandes GNU

  1. #21
    Membre habitué
    Homme Profil pro
    autres
    Inscrit en
    Septembre 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : autres
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2012
    Messages : 12
    Par défaut
    Bonjour Flodelarab,

    Désolé vraiment si tu as eu l'impression que je ne tenais pas compte de vos remarques. Je ne voulais pas vos ennuyer en repostant à chaque fois des commentaires.
    J'ai compris grâce à vos remarques qu'il ne fallait pas faire de boucle en plus et finalement ça marche bien de cette manière.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    {
     
    echo ==== EXTRACTION DE ${var1} pour ${filename}
    fsl4.1-fslmaths ${filename}_conv/mri/aseg_raw.nii.gz -uthr ${var2} -thr ${var2} ${filename}_conv/rois/${filename}_${var1}
    fsl4.1-fslmaths ${filename}_conv/rois/${filename}_${var1}.nii.gz -div ${var2} ${filename}_conv/rois/${filename}_${var1}_div
    mri_convert ${filename}_conv/rois/${filename}_${var1}_div.nii.gz ${filename}_conv/rois/${filename}_${var1}_div_conv.nii
     
    echo ==== TRANSFERT DE LA ROI ${var1} pour ${filename}*DANS LE DOSSIER DU LOGICIEL 
    cp ${filename}_conv/rois/${filename}_${var1}_div_conv.nii /$SPTH2/${filename}/mask_charles
    AimsFileConvert /$SPTH2/${filename}/mask_charles/${filename}_${var1}_div_conv.nii /$SPTH2/${filename}/mask_charles/${var1}.ima
     
    echo ${var1} pour ${filename}*TERMINE 
     
    }
     
    # créer un fichier list.txt avec la liste des noms du sujet
    # créer un fichier variables tel que : HIPPOCAMPE_DROIT hippo_d 17 (ou 17 = numéro de la LUT de FreeSufer)
     
    while read var1 var2; do
    	while read filename; do
    		function1
    	done < list.txt
    done < variables.txt
    Ceci dit, j'aurai bien envie de comprendre ce que tu voulais dire par

    "le "cat fichier" pour alimenter un for n'est pas bon si tes lignes ont des espaces; le "read var1 var2" met dans var2 tout le reste de la ligne, donc s'il y a un commentaire ou var3, ton script ne marchera pas"

    et ça m'intéresserai beaucoup de comprendre.

    Pour les entrées et les sorties attendues, en gros les entrées sont des images du cerveau et les sorties sont les mêmes images du cerveau mais modifiées.
    Le résultat est qualitatif ; en fait à la fin je regarde les modifications sur les images du cerveau pour être sur que le script à bien marché.

    Merci beaucoup pour votre aide à tous,

    Charles

  2. #22
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 335
    Par défaut
    Par curiosité, ton script tourne en combien de temps sur un cas complet ?

  3. #23
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 283
    Par défaut
    Ceci dit, j'aurai bien envie de comprendre ce que tu voulais dire par

    "le "cat fichier" pour alimenter un for n'est pas bon si tes lignes ont des espaces; le "read var1 var2" met dans var2 tout le reste de la ligne, donc s'il y a un commentaire ou var3, ton script ne marchera pas"
    Pour le read, si la ligne contient "ma_var1 ma_var2 #ceci est un commentaire", dans ton script, var2 vaudra "ma_var2 #ceci est un commentaire".

    Pour le for, cette commande utilise l'espace comme séparateur. Si le fichier s'appelle "coupe du cerveau.jpg", la boucle for va chercher l'image "coupe", l'image "du", et l'image "cerveau.jpg". Et ton script sera dans les choux.

  4. #24
    Membre habitué
    Homme Profil pro
    autres
    Inscrit en
    Septembre 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : autres
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2012
    Messages : 12
    Par défaut
    Citation Envoyé par disedorgue Voir le message
    Par curiosité, ton script tourne en combien de temps sur un cas complet ?
    pour un sujet, il va prendre à peu près 15 secondes...

    Merci Flodelarab pour ton explication j'ai compris.

    MERCI A TOUS

    Bonne soirée

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Boucle for sur une variable sans prendre en compte les espaces
    Par laurentze dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 23/03/2012, 11h15
  2. Boucle for et plusieurs if enchainés --> comment optimiser le code?
    Par bilou_12 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 05/02/2012, 17h39
  3. [XSLT] PB: Boucle (for-each) et variable
    Par luchoo dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 08/11/2010, 13h58
  4. Réponses: 2
    Dernier message: 14/04/2010, 18h39
  5. Boucle for avec 2 variables
    Par radzar dans le forum PL/SQL
    Réponses: 8
    Dernier message: 15/05/2009, 12h07

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