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

Linux Discussion :

Shell - extraction du nom d'un fichier


Sujet :

Linux

  1. #1
    Membre habitué
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Points : 166
    Points
    166
    Par défaut Shell - extraction du nom d'un fichier
    Bonjour,

    je veux extraire une partie du nom d'un fichier.
    Par exemple, j'ai le nom de fichier suivant:
    toto_num360.txt et je veux juste récupérer 360.
    Alors je mets le commande suivant:
    ${nom:12:15} (nom étant le nom du fichier)
    et au lieu d'obtenir 360, j'obtiens 360.txt.

    Quelqu'un sait comment faut il faire pour récupérer seulement 360?

  2. #2
    Membre expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 177
    Points : 3 166
    Points
    3 166
    Par défaut Re: Shell: extraction du nom d'un fichier
    Citation Envoyé par claralavraie
    je veux extraire une partie du nom d'un fichier.
    Par exemple, j'ai le nom de fichier suivant:
    toto_num360.txt et je veux juste récupérer 360.
    Alors je mets le commande suivant:
    ${nom:12:15} (nom étant le nom du fichier)
    et au lieu d'obtenir 360, j'obtiens 360.txt.

    Quelqu'un sait comment faut il faire pour récupérer seulement 360?
    Oui ... le manuel de bash est clair sur ce point : la syntaxe est ${parametre:debut:longueur}

    Donc, si l'on mesure le nom :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    texte :     toto_num360.txt
                        ^
    debut :     0          1
                012345678901234
                        ^
    longueur :          123 
                          ^
    Il faut donc, dans le cas présent, coder : Puisque la chaine 360 commence au caractère de rang 8 (ça commence au rang 0) et est longue de 3.
    La FAQ Perl est par ici
    : La fonction "Rechercher", on aurait dû la nommer "Retrouver" - essayez et vous verrez pourquoi !

  3. #3
    Membre habitué
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Points : 166
    Points
    166
    Par défaut
    ok d'accord je pensais que c'était début fin.
    j'aurais pu chercher pendant longtemps.
    En tout cas merci.

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

Discussions similaires

  1. [shell] Extraction sélective de lignes d'un fichier texte
    Par kinder_pingui dans le forum Linux
    Réponses: 4
    Dernier message: 01/06/2010, 08h06
  2. extraction de nom de fichier txt
    Par hichem84 dans le forum PL/SQL
    Réponses: 1
    Dernier message: 27/04/2010, 15h11
  3. extraction du nom d'un fichier
    Par oswalidos dans le forum C
    Réponses: 4
    Dernier message: 15/04/2009, 23h30
  4. Extraction de noms de fichiers
    Par kika18 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/12/2007, 10h46
  5. Extraction du nom d'un fichier sans l'éxtension ?
    Par Matt2094 dans le forum Langage
    Réponses: 2
    Dernier message: 25/03/2006, 10h18

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