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 text avec bash


Sujet :

Linux

  1. #1
    Membre régulier Avatar de kazylax
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    278
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 278
    Points : 121
    Points
    121
    Par défaut Modifier un fichier text avec bash
    bonjour,

    j'arrive a lire une ligne dans un fichier text ou .conf mais je voudrais aussi modifier la ligne avec un mot ou phrase précis c'est possible en bash ?

    Actuellement j'ai ceci pour lire une ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    #!/bin/sh
     
    fich="/home/kazylax/bot.conf"
     
    grep "^Pseudo du bot" $fich | while true
    do
     read ligne
     if [ "$ligne" = "" ] ; then break ; fi
     echo $ligne
    done
    Savez vous comment faire avec le code pour modifier la ligne "Pseudo du bot" ?

    Merci
    Cordialement,

  2. #2
    Membre régulier
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2008
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2008
    Messages : 72
    Points : 102
    Points
    102
    Par défaut
    Avec un fichier de conf contenant 2/3 trucs :
    bot.conf
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    plop
    Pseudo du bot
    fjdhfjshjsdfsd
    ton script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ./script.sh | sed 's/bot/prout/'
    Pseudo du prout
    donc remplacer le echo par sed.

    Je ne suis pas sûr de voir ce que tu veux faire exactement, si jamais tu souhaites remplacer dans un fichier entier il y a un peu plus simple (serait-il possible d'avoir le bot.conf)

  3. #3
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 595
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 595
    Points : 19 480
    Points
    19 480
    Par défaut
    Oui, c'est possible en Bash. Bien sûr, sed et awk le font aussi...

    Ici, le grep est inopportun. Enfin... ça peut t'aider à trouver une regex concise, mais pas dans le script

    Une façon de faire est de rediriger une copie du fichier vers la fin de la boucle while;
    de lire chaque ligne, et de tester une regex : si la ligne ne coïncide pas on l'envoie sur la sortie standard, si elle correspond, on envoie la modification sur la sortie standard.
    Finalement, on redirige la sortie standard de la boucle vers le fichier, et on supprime (ou pas) la copie.


    Heureusement, c'est plus facile à scripter qu'à expliquer.

    N'hésite pas à consulter la page du manuel de Bash.

    Tu as la dernière version de l'ABS ?

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

Discussions similaires

  1. Modifier un fichier txt avec FSO?
    Par flo456 dans le forum ASP
    Réponses: 6
    Dernier message: 25/10/2005, 23h16
  2. Fichier texte avec codage non standard
    Par giloutho dans le forum Langage
    Réponses: 4
    Dernier message: 15/07/2005, 20h31
  3. [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, 15h13
  4. Imprimer un fichier texte avec un script vbs
    Par Persons dans le forum Windows
    Réponses: 3
    Dernier message: 23/12/2004, 17h47
  5. Decoupage d'un fichier texte avec cut
    Par tesla dans le forum Linux
    Réponses: 3
    Dernier message: 28/06/2004, 16h39

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