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 :

Concaténation de fichiers sous UNIX?


Sujet :

Linux

  1. #1
    Candidat au Club
    Inscrit en
    Janvier 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Concaténation de fichiers sous UNIX?
    Salut

    sous unix je souhaite concaténer un nombre indéfini de fichiers .log
    par la commande suivante

    cat toto_*.log > toto.log

    Mais ma question est comment insérer dans le nouveau fichier toto.log un caractère "§" a la fin de chaque fichier initial sans changer les fichiers initiaux?

    thanksss

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Tu ne dois pas pouvoir y arriver directement : faut faire une boucle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    > toto.log
    for FILE in `ls toto_*.log`
    do
        cat $FILE >> toto.log
        echo "§" >> toto.log
    done

  3. #3
    Candidat au Club
    Inscrit en
    Janvier 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    D'abord merci pour cette réponse
    Mais avec cette idée il faut que je crée un fichier sh mais je pensai qu'il exister une option avec cat ou bien avec nawk mais je suis débutant et je n'ai pas trouver


  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Non, tu n'est pas obligé de faire un script shell, il suffit de séparer chaque instruction par un ; :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    > toto.log; for FILE in `ls toto_*.log`; do cat $FILE >>toto.log; echo "§" >>toto.log; done
    J'ai mis "> toto.log" au début pour vider le fichier s'il existe déjà, exactement comme le ferait le cat ... >toto.log.

  5. #5
    Candidat au Club
    Inscrit en
    Janvier 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    OK merci c'est ce qu'il me fallait


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

Discussions similaires

  1. Longueur d'un fichier sous UNIX
    Par DIE dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 16/02/2007, 09h53
  2. Copier fichiers sous UNIX sur cle USB
    Par eldiablol dans le forum Administration système
    Réponses: 3
    Dernier message: 30/11/2006, 19h10
  3. Verouillage fichier sous UNIX
    Par bigben99 dans le forum Langage
    Réponses: 4
    Dernier message: 29/11/2006, 14h07
  4. Notification de modification de fichier sous unix en java
    Par deomis dans le forum Général Java
    Réponses: 6
    Dernier message: 20/06/2006, 14h43
  5. Réponses: 7
    Dernier message: 20/09/2005, 17h47

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