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 :

pipes + deux fichiers en entrée


Sujet :

Shell et commandes GNU

  1. #1
    Membre régulier

    Inscrit en
    Août 2007
    Messages
    308
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 308
    Points : 100
    Points
    100
    Billets dans le blog
    1
    Par défaut pipes + deux fichiers en entrée
    Bonjour à tous

    voilà ma question: je veux utiliser la notion de pipe
    le problème c'est que ma deuxième commande travaille sur deux fichiers en entrée
    (l'un est le résultat de la première commande et l'autre c'est un autre fichier tout simplement)
    est ce que c'est toujours possible?
    merci à vous

  2. #2
    Membre éclairé Avatar de jmelyn
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2007
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2007
    Messages : 703
    Points : 823
    Points
    823
    Par défaut
    Bonjour,

    Voici une solution:
    fichier toto:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ligne 1
    ligne 2
    ligne 3
    La commande ci-dessous change la première ligne du fichier toto de "ligne 1" en "ligne 4":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    sed 's/\(.*\)1$/\14/' toto
    ligne 4
    ligne 2
    ligne 3
    Maintenant, pour comparer la sortie de la commande sed au fichier toto, on utilise la commande diff. il faut juste faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed 's/\(.*\)1$/\14/' toto | diff toto -
    Le tiret en fin de commande veut dire "utiliser stdin plutôt qu'un fichier".
    Un problème bien posé est déjà résolu (H. Bergson).

  3. #3
    Membre régulier

    Inscrit en
    Août 2007
    Messages
    308
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 308
    Points : 100
    Points
    100
    Billets dans le blog
    1
    Par défaut
    salut
    merci mais je crois que j'ai pas bien enoncé mon problème
    au fait imagine que dans ton exemple la commande diff travaille sur deux fichiers en entrée. l'un doit etre le résultat de ta commande précédente en plus d'un autre fichier que tu vas spécifier

    est ce que c'est clair?
    voilà je pense que c'est pas possible avec les pipes mais je voulais vérifier ça avec vous
    merci

  4. #4
    Membre actif
    Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2007
    Messages : 248
    Points : 289
    Points
    289
    Par défaut
    Je penses que ce n'est pas possible. Par contre tu peux concatener tes deux fichiers en prenant soin de mettre un séparateur entre les deux pour gérer le changement de format de données.

    A moins que chaque fichier ait un format particulier qui te permettes de t'y retrouver.

    Sinon, tu peux retravailler tes deux fichiers avec AWK ou tout autre commande et n'en faire qu'un seul.

  5. #5
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    Peut être qu'en illustrant ton propos avec les commandes que tu veux utiliser, on avancerait un peu : c'est très flou pour le moment.
    Toutes les vertus des hommes se perdent dans l’intérêt comme les fleuves se perdent dans la mer.
    N'oubliez pas de consulter les FAQ Linux et les cours et tutoriels Linux

  6. #6
    Membre régulier

    Inscrit en
    Août 2007
    Messages
    308
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 308
    Points : 100
    Points
    100
    Billets dans le blog
    1
    Par défaut
    oui, j'ai fait ça à un certain moment mais comme mes scripts sont déjà faits je voulais voir si c'est possible
    bon, il va falloir modifier mes scripts
    merci à vous

Discussions similaires

  1. Réponses: 9
    Dernier message: 12/07/2011, 17h25
  2. Outils sur les différences entre deux fichiers XML
    Par Community Management dans le forum XML/XSL et SOAP
    Réponses: 19
    Dernier message: 21/07/2008, 15h21
  3. [EXCEL] difference entre deux fichiers
    Par Mokhtar BEN MESSAOUD dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/01/2006, 11h12
  4. Récupérer du texte d'un fichier xml entre deux balises
    Par manutudescends dans le forum Format d'échange (XML, JSON...)
    Réponses: 24
    Dernier message: 30/11/2005, 18h29
  5. [langage] Passage d objet entre deux fichiers
    Par Slippers dans le forum Langage
    Réponses: 2
    Dernier message: 28/04/2005, 14h45

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