+ Rispondi
Pagina 1 di 2 1 2 UltimaUltima
Risultati da 1 a 10 su 20
  1. #1

    Iscritto dal
    27/09/2011
    Messaggi
    2,095

    Linux & script periodico (demone?)

    Buonasera TechArena
    sto facendo qualche esperimento di scripting in linux, e vorrei capire come eseguire periodicamente uno script in background (rendendolo di fatto un demone, se non erro)
    con Cron posso eseguirlo al limite ogni minuto, ma se volessi una frequenza maggiore? (p.es ogni 5 secondi).

    Ho pensato di usare un ciclo che conti i secondi (sfruttando l'orologio) ma tale metodo mi inchioda il terminale.
    Come posso lanciarlo in background e far sì che rimanga in esecuzione sempre?

    Grazie mille

  2. #2
    I'm all out of bubblegum
    Iscritto dal
    01/07/2011
    Località
    R'lyeh
    Messaggi
    5,196
    Usi cron per eseguire uno script ogni minuto, e all'interno dello script lanci N tuoscript.sh con sleep in mezzo, es:

    crontab:
    * * * * * script.sh

    script.sh
    codice:
    ./mioscript.sh &
    sleep 5
    ./mioscript.sh &
    sleep 5
    ./mioscript.sh &
    sleep 5
    ./mioscript.sh &
    sleep 5
    ./mioscript.sh &
    sleep 5
    ecc
    Altrimenti salti cron e..

    codice:
    while true
    do
    ./mioscript.sh &
    sleep 5
    done
    Altrimenti devi uscire da bash e tirare in mezzo altra roba, Quartz et similia. Schedulare un task così frequentemente non si fa molto spesso, anzi quasi mai.
    Ultima modifica: 27-12-2012 alle 22:33, di GByTe

  3. #3

    Iscritto dal
    27/09/2011
    Messaggi
    2,095
    thankyou!

    Il mio scopo è aggiornarci un lcd collegato sulla seriale (con informazioni tipo memoria, carico cpu eccetera) per cui lo script si limita a scrivere sulla seriale i dati dei vari cat /proc/meminfo, cat /proc/cpuinfo, uptime, eccetera
    poi un pic dall'altra parte smanazza i dati e li scrive

    Se ci sono idee migliori per fare ciò sono ben accette

    ps. se usassi il secondo sistema mi tiene comunque impegnato il terminale no?

  4. #4
    I'm all out of bubblegum
    Iscritto dal
    01/07/2011
    Località
    R'lyeh
    Messaggi
    5,196
    Stanotte ci penso, ad intuito c'è un metodo migliore per recuperare quei dati che non sia il parsing di /cat/proc/qualcosa.

  5. #5

    Iscritto dal
    27/09/2011
    Messaggi
    2,095
    Quote Originariamente inviato da GByTe Visualizza il messaggio
    Stanotte ci penso, ad intuito c'è un metodo migliore per recuperare quei dati che non sia il parsing di /cat/proc/qualcosa.
    nella mia scarsissima esperienza avevo pensato a quello, sono riuscito a farmi uno scriptino di test banalissimo che stampa il risultato di uptime su una seriale configurata in precedenza.
    una roba tipo uptime > /dev/ttyUSB0

    Attendo tue notizie, grazie!



    EDIT: sto scoprendo che esistono n-mila comandi per ottenere la stessa cosa
    Ultima modifica: 28-12-2012 alle 07:21, di Matteo92

  6. #6

    Iscritto dal
    05/09/2011
    Località
    Questa realtà
    Messaggi
    1,382
    io lurko
    -Cipo-
    PC:
    CM690_Liberty 500W_880GA-UD3H_Phenom II X2 550_12GB DDR3_HD6950_X-Fi_840 EVO 250GB_Velociraptor 150GB_U2410_Razer Mako
    Muletto: PC-Q07 Black - Intel D510MO - 1GB DDR2 - Caviar Green 1TB+500GB LVM - picoPSU-80 + FSP NET-36

  7. #7
    I'm all out of bubblegum
    Iscritto dal
    01/07/2011
    Località
    R'lyeh
    Messaggi
    5,196

  8. #8

    Iscritto dal
    27/09/2011
    Messaggi
    2,095
    ho appena imparato a buttare giù due comandi coerenti su bash e mi tiri fuori quello che per me è klingoniano?
    ci provo a studiarlo

  9. #9
    I'm all out of bubblegum
    Iscritto dal
    01/07/2011
    Località
    R'lyeh
    Messaggi
    5,196
    Quote Originariamente inviato da Matteo92 Visualizza il messaggio
    ho appena imparato a buttare giù due comandi coerenti su bash e mi tiri fuori quello che per me è klingoniano?
    Se riesci ad utilizzare bash con la sua sintassi orrenda (dico, hai visto gli if?) Python è una passeggiata.
    La cosa figa è che non sei limitato a Windows, potenzialmente puoi usare lo stesso codice dieci piattaforme differenti senza cambiare una virgola.

    Più tardi se riesco butto giù un esempio.

  10. #10

    Iscritto dal
    27/09/2011
    Messaggi
    2,095
    Sì, in effetti la sintassi di bash mi ha fatto tirare parecchie imprecazioni
    ci ho messo una vita ad ottenere sta roba qui:
    codice:
    #carico cpu
    cpuload=$(mpstat)
    cpuload=${cpuload:236:4}
    cpuload=${cpuload/,/.}
    echo 100-$cpuload|bc
    solo per ottenere la percentuale di uso CPU


    ps. in python si riesce comunque ad accedere a /dev/ttySarcazzo?


 

Autorizzazioni

  • Non puoi iniziare nuove discussioni
  • Non puoi rispondere alle discussioni
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
Powered by vBulletin™ Version 4.1.5
Copyright © 2019 vBulletin Solutions, Inc. All rights reserved
SEO by vBSEO ©2011, Crawlability, Inc.
Fuso orario: UTC +1, sono le 17:39.