A voir également:
- Tâche cron
- Deplacer barre de tache windows 11 - Guide
- Gestionnaire de tache - Guide
- Z-cron - Télécharger - Optimisation
- Tâche noire sur l'écran qui s'étale progressivement telephone - Forum Ecran
- Gestionnaire de tache windows 11 - Guide
2 réponses
asevere
Messages postés
13084
Date d'inscription
lundi 28 janvier 2002
Statut
Webmaster
Dernière intervention
3 février 2022
426
19 févr. 2008 à 11:30
19 févr. 2008 à 11:30
Bonjour,
J'imagine que tu attend un affichage sur la console ?
Cron n'a pas connaissance de la console de l'utilisateur, il fonctionne dans son propre environnement.
Tu peux éventuellement renvoyer la sortie sur un terminal, mais il faut savoir sur quel terminal l'utilisateur se trouve...
Ou alors, envoyer la sortie sur la première console virtuelle (/dev/tty1) qui est accessible par Ctrl+Alt+F1.
Tu peux faire un test, d'une console quelconque, tu tapes:
Je ne détaille pas plus car c'est un usage peu commun, les rares fois ou l'on a besoin d'avertir tout les utilisateurs connectés c'est en cas de redémarrage, et dans ce cas, la commande shutdown gère tout ça elle-même trés bien (Eventuellement, tu peux mettre en cron cette commande, mais vu qu'elle accepte une date d'arrêt, normalement, tu n'en auras pas besoin.)
L'usage plus commun de cron, c'est d'executer un script, et de rediriger la sortie et l'erreur standard vers un fichier de log.
Si je reprend ton exemple:
N'hésites pas à lire les manuels de cron/crontab ça te permetera de faire des tests qui en valent le coup (en prenant en compte le fait que l'environnement de cron n'est pas exactement celui de l'utilisateur):
A plus
Edit: Précision; sauf sur certains os (Les BSD principalement) la variable $USER n'est pas settée, il faut utiliser $LOGNAME en lieu et place de cette dernière ;-) (cf: man 5 crontab)
J'imagine que tu attend un affichage sur la console ?
Cron n'a pas connaissance de la console de l'utilisateur, il fonctionne dans son propre environnement.
Tu peux éventuellement renvoyer la sortie sur un terminal, mais il faut savoir sur quel terminal l'utilisateur se trouve...
Ou alors, envoyer la sortie sur la première console virtuelle (/dev/tty1) qui est accessible par Ctrl+Alt+F1.
Tu peux faire un test, d'une console quelconque, tu tapes:
echo "Bonjour tty1" >/dev/tty1Puis tu tapes la combinaison Ctrl+Alt+F1, pour voir ton messsage, puis Ctrl+Alt+F6 ou F7 pour revenir à ton bureau.
Je ne détaille pas plus car c'est un usage peu commun, les rares fois ou l'on a besoin d'avertir tout les utilisateurs connectés c'est en cas de redémarrage, et dans ce cas, la commande shutdown gère tout ça elle-même trés bien (Eventuellement, tu peux mettre en cron cette commande, mais vu qu'elle accepte une date d'arrêt, normalement, tu n'en auras pas besoin.)
L'usage plus commun de cron, c'est d'executer un script, et de rediriger la sortie et l'erreur standard vers un fichier de log.
Si je reprend ton exemple:
45 21 * * * echo "Bonsoir $USER" >/home/ton_user/cron.log 2>&1Tu retrouveras dans le fichier /home/ton_user/cron.log le texte "Bonsoir " (sans nom d'utilisateur pour les mêmes raisons qu'au début du message)
N'hésites pas à lire les manuels de cron/crontab ça te permetera de faire des tests qui en valent le coup (en prenant en compte le fait que l'environnement de cron n'est pas exactement celui de l'utilisateur):
man cron man crontab man 5 crontab
A plus
Edit: Précision; sauf sur certains os (Les BSD principalement) la variable $USER n'est pas settée, il faut utiliser $LOGNAME en lieu et place de cette dernière ;-) (cf: man 5 crontab)