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 :

aide commande sed


Sujet :

Linux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    étudiant
    Inscrit en
    Avril 2012
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 44
    Par défaut aide commande sed
    bonjour,
    Je souhaites réaliser une commande qui me permettra d'écrire une ligne dans un fichier avec une variable à l'aide de sed.

    J'ai parcourut pas mal de site qui m'ont un peu aidé mais le problème est que je n'obtiens toujours pas le résultat souhaité.

    Je voudrais avoir pour résultat que la ligne suivante s'inscrive dans un fichier:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <string>23/04/2012</string>
    Pour ce faire j'ai écrit la commande suivante.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var=heure; echo "<string>`date +%D`</string>" |sed -i '2i\'"$var"'\' test.txt
    Seulement cette commande me retourne juste le mot "heure".

    Auriez vous une idée ?
    Merci d'avance

  2. #2
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $ var=heure ; echo "<string>`date +%D`</string>" | sed 'i\     
    > '$var > fichier
    $ cat fichier
    heure<string>04/23/12</string>
    $
    C'est ton insert le problème
    il faut pas de caractères après le i\
    donc tu peux te la jouer one-liner

  3. #3
    Membre averti
    Profil pro
    étudiant
    Inscrit en
    Avril 2012
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 44
    Par défaut
    Merci beaucoup frp31.
    Autre petite question tu sais comment je peux faire pour faire passer la commande a la ligne suivante?
    par exemple afficher cette ligne après la ligne 2 histoire que ca suive un ordre logique sur mon tableau.

  4. #4
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    pareil mais avec append au lieu d'insert et bien sur tu dois ajouter la ligne vide qui sera interprétée comme telle.

  5. #5
    Membre averti
    Profil pro
    étudiant
    Inscrit en
    Avril 2012
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 44
    Par défaut
    Merci pour ces reponses.
    Cependant un autre soucis est survenue.je dois répeter le script plusieurs fois sur le même fichier a des lignes différentes. ce qui fait que tout est décalé et du coup ca me fait un joli carnage dans mon fichier.

    Du coup je pensais mettre des commentaires dans le fichier ou je souhaite écrire ces lignes et demander à sed d'écrire avant la ligne qui contien la chaine de caractère:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <-- charge de l'ordinateur -->
    De facon a obtenir ce résultat

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <number tooltip='1'>1</number>
    <-- charge de l'ordinateur -->
    Je ne sais pas si c'est possible je n'arrive pas a trouver la solution :/

  6. #6
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    [fp@ln ~] echo toto > t
    [fp@ln ~] cat t
    toto
    [fp@ln ~] sed "/toto/ i\
    > tutu
    >
    > " t
    tutu
    toto
    [fp@in ~] rm t
    rm: détruire fichier régulier `t'? y
    [fp@ln ~]
    la recherche se fait sur le /.../ et ensuite commande à appliquer

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

Discussions similaires

  1. aide utilisation commande sed
    Par fbb53 dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 27/07/2011, 16h50
  2. Aide commande sed
    Par JoneZy dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 12/11/2009, 20h13
  3. Aide: commande SED
    Par efelant dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 08/12/2008, 10h47
  4. Aide sur commande Sed
    Par comboDev dans le forum Shell et commandes GNU
    Réponses: 13
    Dernier message: 09/11/2008, 14h20
  5. Aide sur les commandes sed et awk
    Par elkhy dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 20/06/2006, 09h22

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