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 :

Recherche d'une chaîne et remplacement de la ligne suivante


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Recherche d'une chaîne et remplacement de la ligne suivante
    Bonjour,

    Voila j'ai un peu de mal avec la commande sed, donc je requiert votre aide .

    Donc je veux rechercher une ligne dans un fichier, puis modifier une partie de la ligne suivante, et tout cela en une ligne de commande.

    Exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    blabla
    blablabla
    host 1234{
          hardware ethernet az:az:az:az:er:er;
          fixed-addresse 10.0.0.1;
    }
    host 321{
          hardware ethernet za:za::za:za:zs;
          fixed-addresse 10.0.0.2;
    }
    blabla
    Donc
    Je veux rechercher la ligne host 321{
    Puis modifier l'adresse mac az:az:az:az:er:er après le hardware ethernet, sachant qu'il y a une tabulation au début de cette ligne et le ; en fin.

    Bon comme vous l'avez compris je veux modifier le fichier dhcp.conf, pour faire de la réservation d'adresse ip du DHCP depuis un programme JAVA.
    Merci d'avance

  2. #2
    Expert confirmé

    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
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $ cat plop 
    blabla
    blablabla
    host 1234{
          hardware ethernet az:az:az:az:er:er;
          fixed-addresse 10.0.0.1;
    }
    host 321{
          hardware ethernet za:za::za:za:zs;
          fixed-addresse 10.0.0.2;
    }
    blabla
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $ sed '/host 321/{n;s/..:.*/XX:XX:XX:XX:XX:XX;/}' plop 
    blabla
    blablabla
    host 1234{
          hardware ethernet az:az:az:az:er:er;
          fixed-addresse 10.0.0.1;
    }
    host 321{
          hardware ethernet XX:XX:XX:XX:XX:XX;
          fixed-addresse 10.0.0.2;
    }
    blabla
    En rajoutant l'option -i.bak si ça fait l'affaire

  3. #3
    Invité
    Invité(e)
    Par défaut
    Ouaaah merci pour la rapidité!!!!!
    Et elle marche niquel


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

Discussions similaires

  1. recherche d'une chaine et écrit a la ligne suivante
    Par scoobiflo dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 04/08/2009, 08h37
  2. recherche d'une chaîne dans 360000 mots
    Par marco62118 dans le forum VB 6 et antérieur
    Réponses: 18
    Dernier message: 06/04/2007, 13h48
  3. Recherche d'une chaîne dans une sous chaîne
    Par teen6517 dans le forum Langage
    Réponses: 3
    Dernier message: 29/03/2007, 19h10
  4. recherche sur une chaîne de caractères
    Par bogsy15 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 17/07/2006, 12h01

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