Remplacer chaîne de caractères ds un fichier

Résolu
greg5959 Messages postés 5 Statut Membre -  
 popopopop -
Bonjour

Quel est la commande Unix pour remplacer une chaîne de caractère par une autre dans la première ligne d'un fichier ( et uniquement dans la première) ?

Merci pour votre aide

Greg
Configuration: Windows NT 4.0
Internet Explorer 6.0

5 réponses

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,
    sed -i.bak '1 s/motif/remplacement/' fichier
    Voir aussi : sed substitution#simplee

    ;-))
    5
    1. greg5959 Messages postés 5 Statut Membre 1
       
      Merci beaucoup


      A quoi sert le -i.bak ?

      Merci
      Greg
      0
    2. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898 > greg5959 Messages postés 5 Statut Membre
       
      A faire une sauvegarde du fichier d'origine... oKaZou ;-))
      0
    3. greg5959 Messages postés 5 Statut Membre 1 > jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention  
       
      Merci beaucoup

      Bonne journée
      0
    4. popopopop
       
      Salut

      Quelqu'un sait comment intégrer des slashs et des astérisques dans le motif ? je veux remplacer
      */3 * * *

      par
      3 */3 * *
      0
    5. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
       
      echo '*/3 * * *' | sed 's#.*#3 */3 * *#'
      3 */3 * *
      0
  2. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Quelle version de "sed" utilises-tu ?
    sed --version
    Pour que la modification soit prise en compte il faut une version supérieure à 4.0.5, sinon il faut passer par un fichier temporaire :
    sed '1 s/motif/remplacement/' < fichier > fich.tmp && mv -f fich.tmp fichier
    ;-))
    1
  3. greg5959 Messages postés 5 Statut Membre 1
     
    Dsl mais sed --version ne marche pas
    Merci
    1
  4. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Essaye "sed -v" alors et dans tous les cas "man sed" ;-))
    1
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    De rien ;-))
    0
    1. greg5959 Messages postés 5 Statut Membre 1
       
      Excuse moi mais je viens d'essayer et je pense que le sed ne répond pas à mes attentes car je souhaiterais que la modif soit enregistrée dans le fichier ( et pas seulement éditée)
      et apparmeent le -i.bak ne marche pas

      Merci
      0