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 :

test sur des extensions de fichiers script CSH


Sujet :

Shell et commandes GNU

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut test sur des extensions de fichiers script CSH
    bonjour,

    Je debute en csh, et je tombe sur un petit probleme, je souhaite faire un test sur des extentions de fichiers pour savoir si les fichiers entres sont valides ou non pour la suite du script.

    Avec le code ca sera plus parlant :

    #!/bin/csh

    plop:
    echo "Liste des fichiers .txt a tester ( 1.txt 2.txt ...etc )"
    set list=($<)

    foreach txt $list
    if ( $txt != *.txt) then
    echo "$txt n'est pas un fichier .txt valide"
    goto plop
    endif
    end
    resultat :
    ( 1.txt 2.txt 3.txt )
    *.txt: No match.
    il me semble que le caractere * ne soit pas reconnu comme dans une expression reguliere.

    et si je mets
    if ( $txt != *\.txt) then
    ca renvoie la meme chose...

  2. #2
    Membre actif
    Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2007
    Messages : 248
    Points : 289
    Points
    289
    Par défaut
    J'ai essayé ça:
    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
    #!/bin/csh
     
    plop:
    echo "Liste des fichiers .txt a tester ( 1.txt 2.txt ...etc )"
    set list=($<)
     
    foreach txt ($list)
    	if (`echo "$txt" | grep -c '\.txt$'` >= 1) then
    		echo "$txt est un fichier .txt valide"
    		goto plop
    	else
    		echo "$txt n'est pas un fichier .txt valide"
    		goto plop
    	endif
    end
    Mais prend mon code avec des "pincettes" car je ne connais pas csh.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    merci pour ta reponse, je l ai pas teste car entre temps j'avais trouve la solution.

    j'ai fait une erreur de syntaxe dans le if, enfait je ne compare pas 2 chaines de caracteres entre elles, mais une chaine de caractere (string correspondant a $txt) et un model (pattern *.txt ) et donc dans ce cas la syntaxe du "different" est : !~

    (cf aide CSH : http://publib.boulder.ibm.com/infoce...4/0/13/3/11/2/ )

    le bon code est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    #!/bin/csh
     
    plop:
    echo "Liste des fichiers .txt a tester ( 1.txt 2.txt ...etc )"
    set list=($<)
     
    foreach txt $list
          if ( $txt !~ *.txt) then
               echo "$txt n'est pas un fichier .txt valide"
               goto plop
          endif
    end
    et on peut rajouter, au cas ou on veuille prendre en compte les majuscules :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     if ( $txt !~ *.[tT][xX][tT]) then

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

Discussions similaires

  1. [Batch] Enchaînement de tests sur des extensions
    Par citronized dans le forum Scripts/Batch
    Réponses: 9
    Dernier message: 15/12/2013, 21h18
  2. Test sur des extension de fichiers
    Par arnaud036 dans le forum Linux
    Réponses: 1
    Dernier message: 05/05/2010, 20h36
  3. [JUnit] Effectuer des tests sur des traitements de fichiers
    Par Baptiste Wicht dans le forum Tests et Performance
    Réponses: 3
    Dernier message: 12/03/2010, 18h10
  4. test sur des noms de fichiers php
    Par argonath dans le forum Langage
    Réponses: 5
    Dernier message: 27/09/2009, 21h47
  5. Tests sur des fichiers
    Par cyrilskof dans le forum Langage
    Réponses: 4
    Dernier message: 03/09/2008, 20h55

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