Gros problème avec la commande at :
Fermé
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
-
26 déc. 2008 à 23:19
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 28 déc. 2008 à 16:52
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 28 déc. 2008 à 16:52
A voir également:
- Gros problème avec la commande at :
- Invite de commande - Guide
- Commande terminal mac - Guide
- Diskpart commande - Guide
- Commande dism - Guide
- World at arms - Télécharger - Rôle RPG
16 réponses
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
27 déc. 2008 à 08:51
27 déc. 2008 à 08:51
hello
vérifier les fichiers /etc/at.allow et /etc/at.deny
#!/bin/bash
at 21:12 << EOF
echo ' message' >>.bashrc
exit 0
EOF
pour vérifier
atq
vérifier les fichiers /etc/at.allow et /etc/at.deny
#!/bin/bash
at 21:12 << EOF
echo ' message' >>.bashrc
exit 0
EOF
pour vérifier
atq
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
27 déc. 2008 à 11:28
27 déc. 2008 à 11:28
Salut, tout d'abord, merci pour ta réponse. J'ai donc vérifié la présence de at.allow et at.deny dans le répertoire etc et je ne distingue aucune présence de ces fichiers. Que faire alors ? Est ce important pour le fonctionnement du programme ?
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
27 déc. 2008 à 12:10
27 déc. 2008 à 12:10
voila le rôle de ces fichiers, voir la man page:
Si le fichier /etc/at.allow existe, seuls les utilisateurs
dont les noms sont mentionnés dans ce fichier peuvent
utiliser at.
Si /etc/at.allow n'existe pas, at vérifie si /etc/at.deny
existe, et tous les utilisateurs non-mentionnés dans ce
fichier ont le droit d'invoquer at.
Si aucun de ces deux fichiers n'existe, seul le Super-
utilisateur a le droit d'appeler at.
Un fichier /etc/at.deny vide signifie que tous les util
isateurs ont le droit d'appeler ces commandes, c'est la
configuration par défaut.
Si le fichier /etc/at.allow existe, seuls les utilisateurs
dont les noms sont mentionnés dans ce fichier peuvent
utiliser at.
Si /etc/at.allow n'existe pas, at vérifie si /etc/at.deny
existe, et tous les utilisateurs non-mentionnés dans ce
fichier ont le droit d'invoquer at.
Si aucun de ces deux fichiers n'existe, seul le Super-
utilisateur a le droit d'appeler at.
Un fichier /etc/at.deny vide signifie que tous les util
isateurs ont le droit d'appeler ces commandes, c'est la
configuration par défaut.
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
27 déc. 2008 à 12:33
27 déc. 2008 à 12:33
Alors, je me suis connecté en su et j'ai enregistré le script que tu as écrit sur le forum :
#!/bin/bash
at 12:28 << EOF
echo ' message' >>.bashrc
exit 0
EOF
lorsque j'exécute moi même ce script, le terminal m'affiche :
root@rodolphe-laptop:/home/rodolphe/Documents/scriptshell/PINAPS# ./testat.sh
warning: commands will be executed using /bin/sh
job 37 at Sun Dec 28 12:28:00 2008
et lorsque le temps est écoulé, je réexécute le script et ça me donne :
root@rodolphe-laptop:/home/rodolphe/Documents/scriptshell/PINAPS# ./testat.sh
warning: commands will be executed using /bin/sh
job 37 at Sun Dec 28 12:28:00 2008
Je regarde donc mon fichier .bashrc et rien n'apparaît, mon fichier est vide. Pourtant, je suis bien connecté en mode super utilisateur ( su ).
#!/bin/bash
at 12:28 << EOF
echo ' message' >>.bashrc
exit 0
EOF
lorsque j'exécute moi même ce script, le terminal m'affiche :
root@rodolphe-laptop:/home/rodolphe/Documents/scriptshell/PINAPS# ./testat.sh
warning: commands will be executed using /bin/sh
job 37 at Sun Dec 28 12:28:00 2008
et lorsque le temps est écoulé, je réexécute le script et ça me donne :
root@rodolphe-laptop:/home/rodolphe/Documents/scriptshell/PINAPS# ./testat.sh
warning: commands will be executed using /bin/sh
job 37 at Sun Dec 28 12:28:00 2008
Je regarde donc mon fichier .bashrc et rien n'apparaît, mon fichier est vide. Pourtant, je suis bien connecté en mode super utilisateur ( su ).
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
27 déc. 2008 à 14:18
27 déc. 2008 à 14:18
Salut,
Depuis où lances-tu ton script ?
Si tu t'es connecté en tant que root avec la commande "su", tu es bien passé root, mais tu es resté dans l'environnement "$USER", autrement dit si tu étais dans le /home/$USER" tu est toujours dans ce répertoire. Voir Utiliser la commande "su"
Autre chose, si tu exécutes ton script depuis "home/rodolphe/Documents/scriptshell/PINAPS", le "echo ' message' >>.bashrc " enverra "message" dans un fichier .bashrc qui sera créé dans le répertoire courant, autrement dit : /PINAPS
;-)
Depuis où lances-tu ton script ?
Si tu t'es connecté en tant que root avec la commande "su", tu es bien passé root, mais tu es resté dans l'environnement "$USER", autrement dit si tu étais dans le /home/$USER" tu est toujours dans ce répertoire. Voir Utiliser la commande "su"
Autre chose, si tu exécutes ton script depuis "home/rodolphe/Documents/scriptshell/PINAPS", le "echo ' message' >>.bashrc " enverra "message" dans un fichier .bashrc qui sera créé dans le répertoire courant, autrement dit : /PINAPS
;-)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
27 déc. 2008 à 14:09
27 déc. 2008 à 14:09
il faut attendre dimanche 12h 28 !!!!!
que répond atq ?
il est 12h
si je lance une commande at 11:00 elle s'exécutera demain à 11h,si je la lance at 13:00 elle s'exécutera à 13h aujourd'hui
que répond atq ?
il est 12h
si je lance une commande at 11:00 elle s'exécutera demain à 11h,si je la lance at 13:00 elle s'exécutera à 13h aujourd'hui
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
27 déc. 2008 à 18:05
27 déc. 2008 à 18:05
Ah, ok ! Je pensais que lorsqu'il est 11h00 et que l'on tape at 12:00, que la commande s'exécutera à 12h le même jour.
voici ce que j'ai dans mon atq :
root@rodolphe-laptop:/home/rodolphe/Documents/scriptshell/PINAPS# atq
34 Sun Dec 28 12:24:00 2008 a root
37 Sun Dec 28 12:28:00 2008 a root
36 Sun Dec 28 12:25:00 2008 a root
28 Sun Dec 28 11:25:00 2008 a rodolphe
38 Sun Dec 28 12:28:00 2008 a root
30 Sun Dec 28 11:30:00 2008 a rodolphe
Je vous donnerai des nouvelles demain...
voici ce que j'ai dans mon atq :
root@rodolphe-laptop:/home/rodolphe/Documents/scriptshell/PINAPS# atq
34 Sun Dec 28 12:24:00 2008 a root
37 Sun Dec 28 12:28:00 2008 a root
36 Sun Dec 28 12:25:00 2008 a root
28 Sun Dec 28 11:25:00 2008 a rodolphe
38 Sun Dec 28 12:28:00 2008 a root
30 Sun Dec 28 11:30:00 2008 a rodolphe
Je vous donnerai des nouvelles demain...
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
28 déc. 2008 à 09:14
28 déc. 2008 à 09:14
pour faire des tests, tu peux lancer une commande at:
at now+3minutes
at now+3minutes
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
28 déc. 2008 à 11:55
28 déc. 2008 à 11:55
J'ai essayé la commande at now+3minutes et ça ne fonctionne pas
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
28 déc. 2008 à 12:00
28 déc. 2008 à 12:00
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
28 déc. 2008 à 12:06
28 déc. 2008 à 12:06
Euh... non, j'ai oublié. J'ai donc mis mon petit programme
#! /bin/bash
at now+2minutes
echo "message"
exit 0
le tout dans mon home et non dans le répertoire utilisateur.
#! /bin/bash
at now+2minutes
echo "message"
exit 0
le tout dans mon home et non dans le répertoire utilisateur.
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
28 déc. 2008 à 12:08
28 déc. 2008 à 12:08
Et ça ne fonctionne toujours pas...
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
28 déc. 2008 à 13:30
28 déc. 2008 à 13:30
Tu peux essayer comme ça :
#! /bin/sh at now + 1 minutes <<EOF >/dev/null 2>&1 echo "Bonjour" > new_fich EOF;-))
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
28 déc. 2008 à 15:11
28 déc. 2008 à 15:11
c'est bizzare, ça ne fonctionne toujours pas :
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
28 déc. 2008 à 15:19
28 déc. 2008 à 15:19
Enlèves le ">/dev/null 2>&1" dans le script, lances ton script et affiches ce qui sort...
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
28 déc. 2008 à 15:46
28 déc. 2008 à 15:46
Merci de m'aider. Alors, lorsque la minute est écoulée, rien ne se passe. J'exécute manuellement mon script avant et après que la minute soit écoulée et ça m'affiche :
root@rodolphe-laptop:/home# ./test.sh
warning: commands will be executed using /bin/sh
job 42 at Sun Dec 28 15:44:00 2008
root@rodolphe-laptop:/home# ./test.sh
warning: commands will be executed using /bin/sh
job 43 at Sun Dec 28 15:45:00 2008
root@rodolphe-laptop:/home#
root@rodolphe-laptop:/home# ./test.sh
warning: commands will be executed using /bin/sh
job 42 at Sun Dec 28 15:44:00 2008
root@rodolphe-laptop:/home# ./test.sh
warning: commands will be executed using /bin/sh
job 43 at Sun Dec 28 15:45:00 2008
root@rodolphe-laptop:/home#
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
28 déc. 2008 à 16:12
28 déc. 2008 à 16:12
Donc tu n'as aucun fichier du nom de "new_fich" contenant "Bonjour" de créer dans le répertoire d'où tu lances le script ?
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
28 déc. 2008 à 16:18
28 déc. 2008 à 16:18
ah si !
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
28 déc. 2008 à 16:24
28 déc. 2008 à 16:24
Attends, je réessaie car j'avais exécuter le script manuellement en tapant ./test.sh
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
28 déc. 2008 à 16:27
28 déc. 2008 à 16:27
Finalement, ça ne fonctionne pas. Ca fonctionne si j'exécute le script en tapant ./test.sh
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
28 déc. 2008 à 16:38
28 déc. 2008 à 16:38
Attends là, y'a un truc que je ne pige pas ;-\
Ca fonctionne si j'exécute le script en tapant ./test.sh
Et tu voudrais que ça fonctionne comment ?
Ca fonctionne si j'exécute le script en tapant ./test.sh
Et tu voudrais que ça fonctionne comment ?
-RoRo-
Messages postés
98
Date d'inscription
dimanche 2 novembre 2008
Statut
Membre
Dernière intervention
14 mai 2010
1
28 déc. 2008 à 16:42
28 déc. 2008 à 16:42
en laissant at dans le script, si j'exécute en tapant ./test.sh ça fonctionne. Mais je voudrai que le at fonctionne !
Je t'ai dis ça car tu me demandais :
"lances ton script et affiches ce qui sort... "
Je t'ai dis ça car tu me demandais :
"lances ton script et affiches ce qui sort... "
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
28 déc. 2008 à 16:52
28 déc. 2008 à 16:52
Bon je ne comprends plus rien là ;-((
Avec ce script (foo.sh) :
Avec ce script (foo.sh) :
#! /bin/sh at now + 1 minutes <<EOF echo "Bonjour" > new_fich EOFet en le lançant :
./foo.shQu'est-ce qui se passe ?