• Benvenuti su RaspberryItaly!
Benvenuto ospite! Login Login con Facebook Registrati Login with Facebook


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Tags
su non cronjob pi raspberry funziona

[Problema] Cronjob non funziona su Raspberry Pi
#1
Ciao a tutti,
Ho un problema con un Cronjob che vorrei eseguire sul mio Raspberry Pi.
Vorrei fare uno SpeedTest usando speedtest.net e mandare a me stesso attraverso Telegram (telegram.org) il link dell'immagine PNG dello SpeedTest.
Per fare tutto questo ho eseguito da terminale:
Codice:
speedtest-cli
che ho installato facendo
Codice:
sudo easy_install speedtest-cli
.
Per ottenere il link da condividere basta eseguire
Codice:
speedtest-cli --share
.
Il codice Python che faccio eseguire dal mio Raspberry Pi è questo: http://i.imgur.com/bjrxhw1.png.
Quando lo eseguo manualmente da riga di comando, funziona, quando lo faccio eseguire da crontab, non va.
So che, leggendo tanti thread, eseguire script da riga di comando piuttosto che da crontab è differente ma stavolta la cosa strana è che se eseguo da riga di comando questo script su Ubuntu 15.10, funziona, e se lo eseguo da crontab, funziona ugualmente, cosa che con il Raspberry Pi non succede.

Il mio script step by step:

1)
Codice:
!#/usr/bin/env python
per eseguire il cronjob
2)
Codice:
import telepot
il framework che mi permette di usare le API per i Bot di Telegram https://core.telegram.org/bots/api
3) Attraverso la libreria "os" eseguo un comando da terminale all'interno dello script, e salvo il risultato all'interno di un file di testo, log.txt
Codice:
speedtest-cli --share >> log.txt
4) Leggo tutto il testo all'interno del file log.txt e seleziono la nona riga dove è salvato il link da condividere.
5) Mando il link attraverso il metodo
Codice:
sendMessage()
6) Alla fine rimuovo il file log.txt per il successivo cronjob

Soluzioni già provate:

1) Il mio crontab ha questo aspetto
Codice:
15 3 * * * python /home/pi/my_directory/script.py
tenendo conto che intendo eseguire lo script ogni giorno alle 3:15 di notte.
Ho già provato a sostituire con
Codice:
15 3 * * * usr/bin/python /home/pi/my_directory/script.py
ma non ha funzionato

2) In alto allo script ho scritto
Codice:
os.chdir(/home/pi/my_directory/)
per non dover riscrivere tutto il percorso del file ogni volta. Ho provato anche a scrivere ogni volta tutti i percorsi completi e non ha funzionato.


Grazie a tutti in anticipo per l'aiuto.
Risposta
#2
Cioè, se da terminale dai
Codice:
python /home/pi/my_directory/script.py

Funziona?
Risposta
#3
(26/02/2016, 21:47)Zzed Ha scritto: Cioè, se da terminale dai

Codice:
python /home/pi/my_directory/script.py

Funziona?

si
Risposta
#4
(26/02/2016, 21:50)korpf Ha scritto:
(26/02/2016, 21:47)Zzed Ha scritto: Cioè, se da terminale dai

Codice:
python /home/pi/my_directory/script.py

Funziona?

si

salve ..sono anchio nella stessa condizione
volevo mandare questo comando  */5 * * * *   python /home/pi/prova/BMPtest.py in modo che ogni 5 minuti avessi i risultati del .py,invece niente,dove sbaglio ?

ciao
Risposta
#5
esegui
Codice:
tail /var/log/cron.log
Heart Libro  | Blog EnricoSartori.it | Idea YouTube
Se un utente ti è stato utile, aumenta la sua reputazione! premi il Pollicione! 
Risposta
#6
(08/05/2019, 10:07)Enrico Sartori Ha scritto: esegui
Codice:
tail /var/log/cron.log

tail:impossibile aprire 'var/log/cron.log'per la lettura:file o directorn esistente

ps:mi scuso,sono un principiante in merito a linux Blush 

ciao


Allegati Anteprime
   
Risposta
  


Vai al forum:


Navigazione: 1 Ospite(i)
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect