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 :

récupérer les messages affichés par l'exécution d'un script


Sujet :

Linux

  1. #1
    Débutant
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 496
    Points : 149
    Points
    149
    Par défaut récupérer les messages affichés par l'exécution d'un script
    Bonjour

    si on a un script shell de 5000 lignes et on le lance à partir d'une application web. comment fais t-on pour récuperer tous les messages que va générer ce script.

    je m'explique : si par exemple le script s'appelle script_1

    si je suis sur la ligne de commande et je lance ce script après le prompt, je peux récupérer sa sortie dans un fichier en faisant
    mais si je le lance à partir d'une autre application, je ne peux pas voir les messages qui seront affichés par le script sur l'écran.

    y a t-il moyen de mettre une commande dans ce script pour créer un fichier qui contiendra ces messages ?

    je peux placer cette commande un peu partout dans le script pour detecter la place où le script va casser s'il y a un problème.

    Merci.

  2. #2
    Membre éclairé Avatar de BlaireauOne
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    492
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2007
    Messages : 492
    Points : 652
    Points
    652
    Par défaut
    Bonsoir,

    Commande "tee" : je ne sais pas si ça correspond à ton besoin

    tee (affiche son entrée sur la sortie standard et l'enregistre dans le fichier en argument)

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    script_1 | tee fichier.log
    # mode append
    script_1 | tee -a fichier.log

  3. #3
    Débutant
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 496
    Points : 149
    Points
    149
    Par défaut
    Citation Envoyé par BlaireauOne
    Bonsoir,

    Commande "tee" : je ne sais pas si ça correspond à ton besoin

    tee (affiche son entrée sur la sortie standard et l'enregistre dans le fichier en argument)

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    script_1 | tee fichier.log
    # mode append
    script_1 | tee -a fichier.log
    j'ai fait un essai avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls -l | tee fichier.log
    et le fichier fichier.log a été crée mais avec une taille de 0.
    c'est que la sortie de ls -l n'a pas été envoyé vers ce fichier.

    qu'est ce que cela veut dire ?

  4. #4
    Membre éclairé Avatar de BlaireauOne
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    492
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2007
    Messages : 492
    Points : 652
    Points
    652
    Par défaut
    Citation Envoyé par diamonds
    j'ai fait un essai avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls -l | tee fichier.log
    et le fichier fichier.log a été crée mais avec une taille de 0.
    c'est que la sortie de ls -l n'a pas été envoyé vers ce fichier.

    qu'est ce que cela veut dire ?

    Bonjour diamonds,

    Chez moi, la la commande fonctionne.
    La seule explication que je vois, c'est que ton File System est plein à 100%

  5. #5
    Débutant
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 496
    Points : 149
    Points
    149
    Par défaut
    Citation Envoyé par BlaireauOne
    Bonjour diamonds,

    Chez moi, la la commande fonctionne.
    La seule explication que je vois, c'est que ton File System est plein à 100%
    oui tu as raison, car même les applications qui marchaient avant, ne marche plus mainjtenant.

    comment je peux faire pour vérifier et vider le File System ?

    as tu déja essayé de lancer un script shell à partir d'une application java ?

  6. #6
    Membre éclairé Avatar de BlaireauOne
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    492
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2007
    Messages : 492
    Points : 652
    Points
    652
    Par défaut
    Citation Envoyé par diamonds
    oui tu as raison, car même les applications qui marchaient avant, ne marche plus mainjtenant.

    comment je peux faire pour vérifier et vider le File System ?

    as tu déja essayé de lancer un script shell à partir d'une application java ?
    Etat de ton File System :
    . en bash
    Tous les File System : df -h
    Le File System sur lequel tu est : df -h .
    . en ksh
    Argument -k au lieu de -h

    "Vider" ton File System consiste à supprimer des fichiers inutiles.

    Je n'ai aucune compétence java

  7. #7
    Débutant
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 496
    Points : 149
    Points
    149
    Par défaut
    Citation Envoyé par BlaireauOne
    Etat de ton File System :
    . en bash
    Tous les File System : df -h
    Le File System sur lequel tu est : df -h .
    . en ksh
    Argument -k au lieu de -h

    "Vider" ton File System consiste à supprimer des fichiers inutiles.

    Je n'ai aucune compétence java
    comment je vais savoir si je suis en bash, en korn, ou en csh ?
    mon serveur unix c'est un solaris

  8. #8
    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
    Si tu sais pas, tape df -k et tu devrais voir une ligne ou une colonne listant l'espace restant.

  9. #9
    Débutant
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 496
    Points : 149
    Points
    149
    Par défaut
    Citation Envoyé par _Mac_
    Si tu sais pas, tape df -k et tu devrais voir une ligne ou une colonne listant l'espace restant.
    df -k ca me donne ceci : j'ai un solaris

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    Filesystem            kbytes    used   avail capacity  Mounted on
    /dev/dsk/c1t0d0s0    50430351 8101759 41824289    17%    /
    /devices                   0       0       0     0%    /devices
    ctfs                       0       0       0     0%    /system/contract
    proc                       0       0       0     0%    /proc
    mnttab                     0       0       0     0%    /etc/mnttab
    swap                 63450400    1080 63449320     1%    /etc/svc/volatile
    objfs                      0       0       0     0%    /system/object
    /platform/sun4u-us3/lib/libc_psr/libc_psr_hwcap2.so.1
                         50430351 8101759 41824289    17%    /platform/sun4u-us3/lib                                              /libc_psr.so.1
    /platform/sun4u-us3/lib/sparcv9/libc_psr/libc_psr_hwcap2.so.1
                         50430351 8101759 41824289    17%    /platform/sun4u-us3/lib                                              /sparcv9/libc_psr.so.1
    fd                         0       0       0     0%    /dev/fd
    swap                 63456792    7472 63449320     1%    /tmp
    swap                 63449376      56 63449320     1%    /var/run
    /dev/dsk/c1t1d0s7    58467997 33663739 24219579    59%    /space
    /dev/dsk/c1t0d0s7    58467997   57993 57825325     1%    /export/home
    int/applogs          52428800     156 52428643     1%    /applogs
    archive              37416960      24 37397123     1%    /archive
    archive/archive1     37416960   19747 37397123     1%    /archive1
    userspace/bilbo03    20971520 4712337 16259183    23%    /bilbo03
    userspace/bilbo11    146800640 56928536 89872104    39%    /bilbo11
    userspace/bilbo12    8388608 4484714 3903893    54%    /bilbo12
    data                 37416960      24 23571214     1%    /data
    index                37416960      24 30712794     1%    /index
    int                  140378112      24 140377868     1%    /int
    data/ora_data        37416960 13845466 23571214    38%    /ora_data
    index/ora_index      37416960 6703786 30712794    18%    /ora_index
    rbs/ora_rbstemp      37416960 15711105 21705504    42%    /ora_rbstemp
    sw/ora_system        8388608 2202756 6185851    27%    /ora_system
    rbs                  37416960      24 21705504     1%    /rbs
    sw/software          26214400 13801244 12413155    53%    /software
    sw                   37416960      24 21408631     1%    /sw
    userspace            561512448      24 495386340     1%    /userspace
    gandalf:/staff       5261112 1539086 3669415    30%    /staff
    qu'est ce que ca vous dit ?

  10. #10
    Membre éclairé Avatar de BlaireauOne
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    492
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2007
    Messages : 492
    Points : 652
    Points
    652
    Par défaut
    Citation Envoyé par diamonds
    df -k ca me donne ceci : j'ai un solaris

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    Filesystem            kbytes    used   avail capacity  Mounted on
    /dev/dsk/c1t0d0s0    50430351 8101759 41824289    17%    /
    /devices                   0       0       0     0%    /devices
    ctfs                       0       0       0     0%    /system/contract
    proc                       0       0       0     0%    /proc
    mnttab                     0       0       0     0%    /etc/mnttab
    swap                 63450400    1080 63449320     1%    /etc/svc/volatile
    objfs                      0       0       0     0%    /system/object
    /platform/sun4u-us3/lib/libc_psr/libc_psr_hwcap2.so.1
                         50430351 8101759 41824289    17%    /platform/sun4u-us3/lib                                              /libc_psr.so.1
    /platform/sun4u-us3/lib/sparcv9/libc_psr/libc_psr_hwcap2.so.1
                         50430351 8101759 41824289    17%    /platform/sun4u-us3/lib                                              /sparcv9/libc_psr.so.1
    fd                         0       0       0     0%    /dev/fd
    swap                 63456792    7472 63449320     1%    /tmp
    swap                 63449376      56 63449320     1%    /var/run
    /dev/dsk/c1t1d0s7    58467997 33663739 24219579    59%    /space
    /dev/dsk/c1t0d0s7    58467997   57993 57825325     1%    /export/home
    int/applogs          52428800     156 52428643     1%    /applogs
    archive              37416960      24 37397123     1%    /archive
    archive/archive1     37416960   19747 37397123     1%    /archive1
    userspace/bilbo03    20971520 4712337 16259183    23%    /bilbo03
    userspace/bilbo11    146800640 56928536 89872104    39%    /bilbo11
    userspace/bilbo12    8388608 4484714 3903893    54%    /bilbo12
    data                 37416960      24 23571214     1%    /data
    index                37416960      24 30712794     1%    /index
    int                  140378112      24 140377868     1%    /int
    data/ora_data        37416960 13845466 23571214    38%    /ora_data
    index/ora_index      37416960 6703786 30712794    18%    /ora_index
    rbs/ora_rbstemp      37416960 15711105 21705504    42%    /ora_rbstemp
    sw/ora_system        8388608 2202756 6185851    27%    /ora_system
    rbs                  37416960      24 21705504     1%    /rbs
    sw/software          26214400 13801244 12413155    53%    /software
    sw                   37416960      24 21408631     1%    /sw
    userspace            561512448      24 495386340     1%    /userspace
    gandalf:/staff       5261112 1539086 3669415    30%    /staff
    qu'est ce que ca vous dit ?

    Ça dit que tu n'as pas de File System rempli à 100%.
    Aussi, je n'ai pas d'explication pour ton fichier "fichier.log" vide avec la commande qui suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls -l | tee fichier.log
    A part ça, pour ton info., connaître le shell sous lequel tu es se fait avec la commande ps.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $ ps
          PID    PPID    PGID     WINPID  TTY  UID    STIME COMMAND
         5288       1    5288       5288  con 1007 20:33:36 /usr/bin/bash
         4152    5288    4152       5924  con 1007 20:33:52 /usr/bin/ps

  11. #11
    Membre chevronné

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 296
    Points : 1 803
    Points
    1 803
    Par défaut
    pour en revenir a la question initiale : la commande que tu lance "a la main"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    script_1 >fichier_1
    peut etre lancer de la meme facon via la commande "system" (ou equivalente) de java, ensuite depuis ton appli tu lit le fichier.

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/10/2014, 16h16
  2. Réponses: 2
    Dernier message: 01/08/2013, 10h54
  3. Récupérer la table affichée par FREQ
    Par pedouille dans le forum SAS Base
    Réponses: 2
    Dernier message: 29/05/2007, 15h30
  4. [Access] Récupérer les champs commençant par ...
    Par paflolo dans le forum Langage SQL
    Réponses: 3
    Dernier message: 15/02/2006, 10h35
  5. Intercepter les messages émis par WordApplication
    Par Claude Animo dans le forum API, COM et SDKs
    Réponses: 1
    Dernier message: 11/07/2005, 20h23

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