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 :

Supprimer une ligne dans un fichier


Sujet :

Linux

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 73
    Points
    73
    Par défaut Supprimer une ligne dans un fichier
    Bien le bonsoir,

    Je souhaiterais écrire un petit script Unix qui peut scanner un fichier et y supprimer une ligne particulière, selon une variable passée en mémoire.

    Or, j'ai deux lacunes :
    • je ne sais pas comment supprimer une ligne (connue) dans un fichier (sans utiliser vi) avec un script ;
    • je ne sais pas non plus comment faire pour charger dans la mémoire une valeur dans une variable, ni même comment la supprimer après (un peu comme avec les variables globales de php et l'unset(); si vous comprenez pas méthaphore ).

    Merci pour votre aide, puissent vos lumières m'éclairer

  2. #2
    Membre confirmé Avatar de Kcirtap
    Inscrit en
    Juillet 2005
    Messages
    553
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 553
    Points : 523
    Points
    523
    Par défaut
    Salut !

    Je ne peux malheureusement pas te donner de solution pour ton problème, mais un conseil : tu auras certainement plus de chance que ton message reçoive une réponse si tu demandes son déplacement dans le forum Linux & Développement pour Linux.

    Bon début de semaine.

  3. #3
    Expert confirmé
    Avatar de Katyucha
    Femme Profil pro
    DevUxSecScrumOps Full Stack Bullshit
    Inscrit en
    Mars 2004
    Messages
    3 287
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Irlande

    Informations professionnelles :
    Activité : DevUxSecScrumOps Full Stack Bullshit

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 287
    Points : 5 075
    Points
    5 075
    Par défaut Re: Supprimer une ligne dans un fichier
    Citation Envoyé par tsing
    je ne sais pas comment supprimer une ligne (connue) dans un fichier (sans utiliser vi) avec un script ;
    Tu as plusieurs méthodes pour cela
    Je pense qu'avec sed, tu dois t'en sortir. (je laisse les spécialistes te répondre, je suis plutot pas doué)
    je ne sais pas non plus comment faire pour charger dans la mémoire une valeur dans une variable, ni même comment la supprimer après (un peu comme avec les variables globales de php et l'unset(); si vous comprenez pas méthaphore ).
    Cela s'appelle une variable d'environnement

    http://marcg.developpez.com/ksh/#L2.3
    http://marcg.developpez.com/ksh/#L2.5
    Pour plus de lecture
    Grave urgent !!!

  4. #4
    Membre expérimenté
    Avatar de narmataru
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 548
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 548
    Points : 1 680
    Points
    1 680
    Par défaut
    Bonjour,
    Voici un exemple avec sed.
    narma@linimi:/tmp$ cat test.txt
    1 dsfg sdfg sdfg sfg sfg sdfg sfg
    2 fhnfghjfghj fgjh fgjh fgjkghjk ghjk ghjk
    3 gfjktghjdgb sdfg sdfgsdfsdfgezsr zer zert zert zer
    4 svbsdf sdfg sdfh dgh AFAC sdgh sdhsdfh zsfhzet
    5 azerth zetrhzeth zethzethzeth zert zeth zeth
    6 zethzethzeth zeth zertyh zeth zerthzert

    narma@linimi:/tmp$ chaine="AFAC"

    narma@linimi:/tmp$ cat test.txt |sed -e "/$chaine/d"
    1 dsfg sdfg sdfg sfg sfg sdfg sfg
    2 fhnfghjfghj fgjh fgjh fgjkghjk ghjk ghjk
    3 gfjktghjdgb sdfg sdfgsdfsdfgezsr zer zert zert zer
    5 azerth zetrhzeth zethzethzeth zert zeth zeth
    6 zethzethzeth zeth zertyh zeth zerthzert
    donc man sed pour plus d'info
    Sed travaille avec des expressions régulière donc c'est très puissant pour trouver la ligne à effacer !

    voilou

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 73
    Points
    73
    Par défaut
    Merci pour l'info

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

Discussions similaires

  1. supprimer une ligne dans un fichier texte
    Par linouline dans le forum Langage
    Réponses: 5
    Dernier message: 05/06/2006, 23h02
  2. Supprimer une ligne dans un fichier texte
    Par @yoyo dans le forum Entrée/Sortie
    Réponses: 11
    Dernier message: 28/03/2006, 14h19
  3. Supprime une ligne dans un fichier texte
    Par dev7 dans le forum Linux
    Réponses: 4
    Dernier message: 28/03/2006, 01h33
  4. Supprimer une ligne dans un fichier text
    Par philippe13 dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 14/03/2006, 16h43
  5. Supprimer une ligne dans un fichier
    Par sbeu dans le forum Langage
    Réponses: 3
    Dernier message: 13/05/2003, 10h30

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