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 :

Regexpr sur les noms de fichiers, douleur, souffrance


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté Avatar de ManusDei
    Homme Profil pro
    vilain troll de l'UE
    Inscrit en
    Février 2010
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : vilain troll de l'UE

    Informations forums :
    Inscription : Février 2010
    Messages : 1 624
    Par défaut Regexpr sur les noms de fichiers, douleur, souffrance
    Bonjour,

    je suis en train de faire un script sous ksh.
    J'ai un dossier avec des fichiers .i et .c
    Je cherche à vérifier que pour chaque fichier NOM_FICHIER.i, il existe un fichier NOM_FICHIER.c, et que dans ce fichier .c, on trouve la ligne
    #include "NOM_FICHIER.i"
    Le script pourra éventuellement être utilisé pour d'autre extensions de fichiers, mais ça je verrais plus tard.

    Mon script a un paramètre, le chemin du dossier dans lequel on doit faire la vérification (sans le / final).

    J'ai commencé petit, je veux d'abord juste vérifier que j'arrive à couper mon nom de fichier correctement.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    for i in ls $1/*.i
    do
    Objet = 'echo $i | sed "s/\(.*\)\.[a-z]+/\1/"'
    echo ${Objet}
    done
    En résultat en sortie, j'ai plein de :
    Je suppose que c'est ma regexpr qui n'est pas bonne, mais c'est ma première donc je rame un peu pour l'instant.

    Merci de votre aide.

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ${YOUR_VARIABLE_NAME%YOUR_SEP*}
    renvoit tout ce qui est dans $YOUR_VARIABLE_NAME avant la dernière occurence du caractère YOUR_SEP

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ${YOUR_VARIABLE_NAME#*YOUR_SEP}
    renvoit tout ce qui est dans $YOUR_VARIABLE_NAME après la première occurence du caractère YOUR_SEP

  3. #3
    Membre expérimenté Avatar de ManusDei
    Homme Profil pro
    vilain troll de l'UE
    Inscrit en
    Février 2010
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : vilain troll de l'UE

    Informations forums :
    Inscription : Février 2010
    Messages : 1 624
    Par défaut
    La première solution fonctionne niquel, merci.
    J'avais un problème avec les espace dans mon affectation, merci un message qui a disparu du sujet depuis

    Pour info, mon script final ressemble à ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    for i in *.i
    do
      Objet=${i%\.*}
     
      grep \#include\ \"$i\" ${Objet}.c
      if [ $? -ne 0]; then
        echo "error in matching include"
        exit 1
      fi 
    done
    echo "all .i are included as should be

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/07/2014, 08h11
  2. Boucle sur les noms de fichier d'un répertoire
    Par bilou_12 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 13/04/2012, 11h12
  3. Les accents sur les noms des fichiers passent mal
    Par fab53 dans le forum Langage
    Réponses: 3
    Dernier message: 04/01/2008, 15h05
  4. [DOM] Problème d'accent sur les noms de fichier avec mon parseur
    Par ujoodha dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 06/04/2006, 21h55
  5. [langage] Etendre les noms de fichier DOS
    Par jmartin dans le forum Langage
    Réponses: 4
    Dernier message: 13/07/2004, 13h32

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