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 :

Remplacer la 1° ligne d'un fichier


Sujet :

Linux

  1. #1
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut Remplacer la 1° ligne d'un fichier
    Bonjour,

    je suis sous Unix et je cherche un moyen soit de supprimer les x premiers caractère de la 1° ligne d'un fichier sans connaitre a priori le nb de caractères à supprimer.

    Exemple :

    dlfjlqdfjlkqsdf%toto
    titi
    tata
    devient :

    %toto
    titi
    tata
    Vous aurez compris, je ne veux pas des caractères qui précéde %toto.

    J'ai bien récupérer ce qui suit :

    echo %(head -1 monfichier|cut -f 2 -d %)

    -> %toto
    mais j'aimerai que ceci devienne ma 1° ligne.

    J'imagine bien une solution en faisant le echo précédent + un tail de wc - 1 (nb ligne-1) mais je crains que ce soit trop lent

    Avec un sed ou awk ça doit être jouable non ?


  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 296
    Points : 1 803
    Points
    1 803
    Par défaut
    bin en cutant la parti a gauche ..... et un cout de sed :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sed "s/$(head -1 monfichier |cut -f 1 -d %)//g" fic
    Marc
    Slackware for ever ......
    BASH - KSH ( http://marcg.developpez.com/ksh/ )

  3. #3
    Expert confirmé
    Avatar de becket
    Profil pro
    Informaticien multitâches
    Inscrit en
    Février 2005
    Messages
    2 854
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Informaticien multitâches
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 2 854
    Points : 5 915
    Points
    5 915
    Par défaut
    Avec sed

    sed -i -e '1s/[^%]*\(%.*\)/\1/g' FICHIER.TXT

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 296
    Points : 1 803
    Points
    1 803
    Par défaut
    tu pers le caractère % avec ta methode non ?
    Marc
    Slackware for ever ......
    BASH - KSH ( http://marcg.developpez.com/ksh/ )

  5. #5
    Expert confirmé
    Avatar de becket
    Profil pro
    Informaticien multitâches
    Inscrit en
    Février 2005
    Messages
    2 854
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Informaticien multitâches
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 2 854
    Points : 5 915
    Points
    5 915
    Par défaut
    oui je perdait le %, c'est pourquoi j'ai édité mon post précédent.
    C'est tout aussi simple

  6. #6
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    Vous êtes des boss

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

Discussions similaires

  1. Remplacer ou ajouter une ligne dans un fichier
    Par jmelyn dans le forum Shell et commandes GNU
    Réponses: 18
    Dernier message: 09/04/2009, 15h37
  2. [VB] lire lignes d'un fichier et remplacer une sous chaine
    Par horzy dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 04/06/2007, 20h58
  3. Réponses: 34
    Dernier message: 08/03/2007, 14h51
  4. Remplacer une ligne d'un fichier texte
    Par mullinski dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 02/07/2006, 18h53
  5. Remplacer une ligne dans une fichier
    Par norior dans le forum Langage
    Réponses: 1
    Dernier message: 18/01/2006, 12h25

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