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 :

modifier un fichier avec bash


Sujet :

Linux

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    299
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 299
    Points : 140
    Points
    140
    Par défaut modifier un fichier avec bash
    Bonjour,

    j'aimerai modifier un mot dans une ligne d'un fichier.

    Voici le fichier à modifier :

    serveur:ftp:test1.txt:dossier_local:mail:*:*:*:*:*:toto:pass
    serveur:ftp:test2.txt:dossier_local:mail:*:*:*:*:*:toto:pass
    serveur:ftp:test3.txt:dossier_local:mail:*:*:*:*:*:toto:pass
    serveur:ftp:test4.txt:dossier_local:mail:*:*:*:*:*:toto:pass
    Pour le moment j'utilise cette commande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed 's/'"$mot"'/'"$modif"'/' fich_config.txt
    mais le problème c'est que tous les mots $mot du fichier sont modifier, j'aimerai que ce soit fait sur une ligne en particulier.

    Comment faire?

    alaninho

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    196
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2009
    Messages : 196
    Points : 358
    Points
    358
    Par défaut
    s'il s'agit de la 3ème ligne il faut faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed '3,3s/'"$mot"'/'"$modif"'/' fich_config.txt
    ou juste 3s

    pour les lignes 1 à 3 ça serait 1,3s

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    299
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 299
    Points : 140
    Points
    140
    Par défaut
    merci, ça fonctionne quand je met un chiffre directement dans l'expression mais quand je met une variable $num, rien ne se passe.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed '/'$num's/'"$mot"'/'"$modif"'/' fich_config.txt
    je pense que c'est un problème avec ma variable.

  4. #4
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Salut,

    Y'a un slash en trop au début

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed ''$num's/'"$mot"'/'"$modif"'/' fich_config.txt
    $ man woman
    Il n'y a pas de page de manuel pour woman.

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    299
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 299
    Points : 140
    Points
    140
    Par défaut
    je viens de voir ça.lol.

    Merci beaucoup de votre aide.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    196
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2009
    Messages : 196
    Points : 358
    Points
    358
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed "${num}s/$mot/$modif/" fich_config.txt

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

Discussions similaires

  1. Lire et modifier un fichier en bash
    Par alaninho dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 11/06/2013, 16h39
  2. Réponses: 7
    Dernier message: 17/02/2012, 11h57
  3. Modifier un fichier text avec bash
    Par kazylax dans le forum Linux
    Réponses: 2
    Dernier message: 28/11/2009, 17h04
  4. Modifier un fichier txt avec FSO?
    Par flo456 dans le forum ASP
    Réponses: 6
    Dernier message: 25/10/2005, 22h16
  5. [DOM] [Débutant(e)] Modifier un fichier XML avec DOM
    Par macks dans le forum Format d'échange (XML, JSON...)
    Réponses: 6
    Dernier message: 05/07/2005, 14h13

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