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 :

concaténer des chaines sous un shell


Sujet :

Shell et commandes GNU

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Par défaut concaténer des chaines sous un shell
    Bonjour,

    je lance un traitement qui me fournit des log. J'aimerais rajouter à la fin de mon fichier de log, la date d'exécution afin d'obtenir un fichier de log pour chaque lancement de mon traitement.
    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    date_t=`date`
     
    php /admin/script/extranet_test/traitementReservationWeb.php >> /admin/script/extranet_test/log/php_trw${date_t}
    Cependant, la date n'est pas renseigné et du coup le fichier généré porte le nom de php_trw.

    lorsque je fais echo ${date_t} la date s'affiche.

    Quelqu'un aurait une idée ?

    Merci.

  2. #2
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 895
    Par défaut
    Un simple echo suffit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    date_t=`date`
     
    php /admin/script/extranet_test/traitementReservationWeb.php >> /admin/script/extranet_test/log/php_trw
    echo $date_t >> /admin/script/extranet_test/log/php_trw
    @++

    PS: je suppose que tu es en sh ou bash.
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Par défaut
    Mon but est que à la fin de php_trw s'ajoute la date.
    La modification que tu as faite ne correspond à ce que je veux.
    je ne veux pas rajouter la date dans le fichier. Je veux qu'elle soit parti intégrante du nom du fichier.

    merci pour ton aide

  4. #4
    ALT
    ALT est déconnecté
    Membre Expert
    Avatar de ALT
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 383
    Par défaut
    As-tu essayé la commande mv ?
    Avec le nom du fichier & la date, ça devrait fonctionner, non ?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Par défaut
    Mon problème n'est pas l'utilisation de commande mais bien la concaténation car si je fais un mv le problème sera le même car il faudra que que je concatène mon fichier avec une variable (à savoir la date)

  6. #6
    Membre émérite

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    552
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2007
    Messages : 552
    Par défaut
    ajoute la date à la fin de ton fichier.

    Si çà ne marche, il doit s'agir d'un problème de droit. Que donne ?

  7. #7
    ALT
    ALT est déconnecté
    Membre Expert
    Avatar de ALT
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 383
    Par défaut
    Justement : mv avec la bonne expression régulière doit te donner le résultat voulu.
    Et l'expression que tu as utilisée (${date_t}) me paraît tout à fait adaptée.
    Ça donnerait donc quelque chose du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mv fichier fichier${date_t}
    Si ça ne fonctionne pas, c'est très sûrement un problème d'expression régulière.
    Mais là, tu n'est pas loin de la solution.

  8. #8
    Membre émérite
    Avatar de Pouic
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 669
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $ ls -a
    .
    ..
    TOTO
    $ mv TOTO{," $date_t"}
    $ ls -a
    .
    ..
    TOTO Fri Feb  8 16:28:09 CET 2008
    Software becomes slower faster than hardware becomes faster
    [size=1]
    http://xrenault.developpez.com

  9. #9
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2007
    Messages : 149
    Par défaut
    bonjour ne souhaiterais tu pas avoir la date dans un format plus lisible ?

    du genre :

    ou encore
    Parceque date renvoie une chaine avec des séparateurs espaces, et tu risque de garlérer à manipuler tes fichiers par la suite.

    Si ta redirection de flux fait des truc bizare c'est que ta variable ${date_t} comporte des espaces, lors de l'interprétation il garde les espaces, et la commande n'est plus réellement ce que tu souhaites.

    De plus n'oubli pas de mettre l'heure également, très util lorsque tu dois lancer le script plusieurs fois dans la même journée

Discussions similaires

  1. Réponses: 1
    Dernier message: 19/09/2019, 12h45
  2. concaténation des chaines
    Par maryem_kh dans le forum Débuter
    Réponses: 4
    Dernier message: 01/02/2013, 10h59
  3. Réponses: 1
    Dernier message: 30/01/2013, 20h15
  4. [A-03] concaténer des chaines de 2 enregistrements
    Par ouzzin dans le forum VBA Access
    Réponses: 6
    Dernier message: 22/12/2008, 13h21
  5. [Unix][9i] insert avec des variable ($) sous Korn Shell
    Par weejungle dans le forum Oracle
    Réponses: 1
    Dernier message: 20/09/2006, 12h41

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