user@linuxtrack:~ $ python -c 'print("Soyez les bienvenus !")'

Vous n'êtes pas identifié(e).

#1 30-06-2013 10:08:20

IceF0x
#! Gourou Linux

[Astuce]Renvoyer les erreurs vers un fichier log

Voilà une astuce qui permet de renvoyer les erreurs dans un fichier texte, très utile pour se faire aider en cas de souci avec une procédure.

si la procédure se passe bien le fichier de log restera vide.

Exemple:

apt-get update 2> erreur.log

Dans cet exemple on oublie d'utiliser sudo

dans ce cas le prompt revient sans rien indiquer, mais si on lis le fichier log.

cat erreur.log

Toutes les erreurs sont loggé dans le fichier.

icef0x@OpenBox ~ $ cat erreur.log
E: Impossible d'ouvrir le fichier verrou /var/lib/apt/lists/lock - open (13: Permission non accordée)
E: Impossible de verrouiller le répertoire /var/lib/apt/lists/
E: Impossible d'ouvrir le fichier verrou /var/lib/dpkg/lock - open (13: Permission non accordée)
E: Impossible de verrouiller le répertoire d'administration (/var/lib/dpkg/). Avez-vous les privilèges du superutilisateur ?

Dans le cas d'un script que l'on partage ça permet de savoir exactement pourquoi le script ne fonctionne pas sur une autre machine et de le corriger en fonction.

Exemple:

#!/bin/bash
ls toto 2> erreur.log

Résultat:

icef0x@OpenBox ~ $ bash test.sh 
icef0x@OpenBox ~ $ cat erreur.log 
ls: impossible d'accéder à toto: Aucun fichier ou dossier de ce type

Si plusieurs commande se suivent dans le script il est recommandé d'utiliser un double chevron >> pour renvoyer les erreurs de chaque commande dans le fichier log.

ls toto 2>> erreur.log

Utiliser des logiciels propriétaires, c'est comme les plats préparés, on est incapable de dire les conservateurs qu'ils contiennent, on dira toujours que c'est bon, mais ça ne remplacera jamais le repas fait maison par sa maman.
]:D #! Crunchbang & Archlinux GNU/Linux User ]:D

Hors ligne

Pied de page des forums