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 :

Supprimer ligne d'un fichier en bash


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2014
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juin 2014
    Messages : 22
    Par défaut Supprimer ligne d'un fichier en bash
    Bonjour,
    je chercher à supprimer une ligne d'un fichier en bash et bien toute la ligne, pour l'instant je réussi à supprimer les caractères de la ligne mais pas le retour à la ligne, voici mon code actuel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ligne=$1
    sed $ligne'd' liste.txt
    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    bizarre... le fichier a été créé sur linux ? sinon man fromdos.

  3. #3
    Membre averti
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2014
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juin 2014
    Messages : 22
    Par défaut
    Oui , en fait je cherche surtout à supprimer une ligne et avec sed je n'y arrive pas.

  4. #4
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 308
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 308
    Par défaut
    Bonjour,

    ce que tu as écrit supprime le retour à la ligne. Pour garder le retour à la ligne, il aurait fallu écrire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed $ligne's/.*//' liste.txt
    Si le résultat ne correspond pas à tes attentes, poste le fichier de départ, le fichier d'arrivée obtenu, le fichier d'arrivée souhaité.

    Est-il indiscret de demander ce que tu as en entrée ($1) de ton script?

  5. #5
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 875
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par cycycysisisi Voir le message
    ...pour l'instant je réussi à supprimer les caractères de la ligne mais pas le retour à la ligne
    Bonjour

    Chez-moi, sed 1d fichier me donne bien (à l'écran attention) le fichier ôté de sa première ligne. Je ne vois pas pourquoi ça ne fonctionne pas chez-toi. Il nous faudrait une ligne d'exemple de ton fichier pour y voir plus clair. Et éventuellement ta ligne pipée sur od -c pour voir aussi les caractères cachés...

    Citation Envoyé par N_BaH Voir le message
    sinon man fromdos.
    Tiens ? Connaissais pas. Plus habitué à unix2dos et dos2unix...

    Citation Envoyé par Flodelarab Voir le message
    Citation Envoyé par cycycysisisi Voir le message
    Oui , en fait je cherche surtout à supprimer une ligne
    Pour garder le retour à la ligne, il aurait fallu écrire...
    Le monsieur ne veut pas garder le retour à la ligne puisqu'il cherche surtout à supprimer une ligne...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  6. #6
    Membre averti
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2014
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juin 2014
    Messages : 22
    Par défaut
    Voici ou j'en suis,
    le code que j'utilise pour comprendre comment ça fonctionne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    cat liste.txt
    echo "suppression"
    ligne=$1
    sed  $ligne'd' liste.txt
    echo "resulat"
    cat liste.txt
    et le résultat que j’obtiens, le problème actuel est que sed supprime bien la ligne mais ne remplace pas dans le fichier
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    -bash-4.1$ sh tests 5
    13151
    13152
    13153
    13154
    13155
    13156
    13157
    13158
    13159
    13160
    suppression
    13151
    13152
    13153
    13154
    13156
    13157
    13158
    13159
    13160
    resulat
    13151
    13152
    13153
    13154
    13155
    13156
    13157
    13158
    13159
    13160

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

Discussions similaires

  1. Extraire une ligne d'un fichier en bash
    Par cycycysisisi dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 25/06/2014, 16h13
  2. Réponses: 5
    Dernier message: 03/05/2011, 11h03
  3. Supprimer ligne dans un fichier text
    Par Gad29 dans le forum Langage
    Réponses: 10
    Dernier message: 23/05/2007, 09h31
  4. Supprimer une ligne dans un fichier
    Par sbeu dans le forum Langage
    Réponses: 3
    Dernier message: 13/05/2003, 10h30
  5. Supprimer la premiere ligne d'un fichier
    Par Kahiba dans le forum Langage
    Réponses: 7
    Dernier message: 11/02/2003, 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