Salut, j'ai créé un fichier python par exemple comme file_example.py
Le fichier affichera la valeur sensex
Supposons que le chemin du fichier sur le système linux soit /Desktop/downloads/file_example.py
et je vais normalement exécuter le fichier comme python file_example.py
Mais je veux définir un travail cron pour exécuter le fichier python toutes les 2 minutes qui se trouve sur le chemin ci-dessus
Quelqu'un peut-il me faire savoir comment procéder
Code édité:
J'avais édité le code et créé un script bash avec le nom test.sh comme indiqué ci-dessous
#!/bin/bash
cd /Desktop/downloads/file_example.py
python file_example.py 2>log.txt
Lorsque j'exécute le fichier ci-dessus, l'erreur suivante s'affiche:
sh-4.2$ python test.sh
File "test.sh", line 3
python test.py 2>log.txt
^
SyntaxError: invalid syntax
En supposant que vous utilisez un système d'exploitation Unix, vous feriez ce qui suit.
éditez le fichier crontab en utilisant la commande
crontab -e
ajoutez une ligne qui ressemble à celle ci-dessous
*/2 * * * * /Desktop/downloads/file_example.py
cela peut être utilisé pour exécuter d'autres scripts, utilisez simplement le chemin d'accès au script nécessaire, c'est-à-dire.
*/2 * * * * /path/to/script/to/run.sh
Une explication du timing est ci-dessous (ajoutez une étoile et une barre oblique avant le numéro pour exécuter tous les n pas de temps, dans ce cas toutes les 2 minutes)
* * * * * command to be executed
- - - - -
| | | | |
| | | | ----- Day of week (0 - 7) (Sunday=0 or 7)
| | | ------- Month (1 - 12)
| | --------- Day of month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)
Vous pouvez utiliser le module python-crontab.
https://pypi.python.org/pypi/python-crontab
Pour créer un nouveau travail cron est aussi simple que suit:
from crontab import CronTab
#init cron
cron = CronTab()
#add new cron job
job = cron.new(command='/usr/bin/echo')
#job settings
job.hour.every(4)