GNU/Linux >> Tutoriels Linux >  >> Linux

Comment déboguer une tâche parvenue ?

Vous pouvez rediriger stdout et stderr du shell entier en utilisant le script pragma (au lieu de exec ) en conjonction avec exec >FILE 2>&1 , comme ceci :

script
    exec >/path/to/some_log_file 2>&1
    exec your_command_here
end script

Cela devrait, espérons-le, vous donner une meilleure idée de ce qui se passe. J'ai trouvé cela utile pour détecter toutes sortes de problèmes dans mes scripts parvenus. Vous pourriez dirigez le stdout de votre commande /stderr directement, mais vous passerez à côté des erreurs provenant du shell (comme les erreurs de syntaxe).

Par contre, si service est suspendu, il pourrait même pas frapper votre script, auquel cas rien de tout cela n'aidera, bien sûr.


Il y a aussi le console log déclaratif, tel que défini ici :http://upstart.ubuntu.com/cookbook/#console-log

Je n'en sais pas assez sur le démarrage pour savoir s'il est activé par défaut, mais vous pouvez l'activer par tâche par démarrage, il sortira par défaut sur /var/log/upstart/<job>.log


Linux
  1. Comment déboguer des programmes C sous Linux à l'aide de gdb

  2. Comment créer un script d'une commande Linux

  3. Comment exécuter un script Python à partir de Java ?

  4. Comment ajouter un travail crontab à crontab à l'aide d'un script bash ?

  5. Comment exécuter un script bash ?

Comment utiliser des variables dans les scripts Shell

Comment exécuter un script Python en PHP

Comment exécuter un script bash

Comment configurer le travail cron pour exécuter un script PHP dans cPanel ?

Comment exécuter une commande dans un script shell ?

Comment créer un script de configuration ?