Allt från Computex 2023

köra php-fil var 5:e sekund

Permalänk
Medlem

köra php-fil var 5:e sekund

Jag undrar om man kan köra en php-fil automatiskt var 5:e sekund samt fjärradministrera start och stopp av detta?

Finns det något program som man kan använda sig av för detta, går det att lösa med cron-job?

Permalänk

*/5 * * * * root /usr/local/bin/php fil

Borde ju fungera. Du behöver ha php4/5-cli installerat

Permalänk
Medlem

Ger inte det bara var 5:e minut?

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av pettan
Ger inte det bara var 5:e minut?

Jo.
'at' funkar också på minst 1 minut.

Det är kanske enklast att skriva en enkel daemon om du ska ha något som rullar så där ofta?

Visa signatur

This is a UNIX virus. Please remove all your files and copy this message to friends.
(Citera mig om du förväntar dig svar)

Permalänk
Medlem

sleep 5s; /usr/local/bin/php fil;

kanske funkar, sen får du loopa det och så, sen kan man väl starta/stoppa det med sh fil/killall fil

Permalänk
Medlem

varför inte en while sats i php scriptet istället? med sleep 5 i slutet av den...
Och sen köra scriptet hela tiden?

Permalänk
Medlem

Eller köra scriptet varje minut och ha en for-sats som kör slingan 11 gånger med 5 sekunders sleep.

Permalänk

Många varianter blir det!

Om programmet körs från ett skal (t ex bash), man följande enkelt användas:

while true; do php program; sleep 5; done

Permalänk
Medlem

Är det då så att den körs och när den är klar så pausar den i 5 sek innan den kör igen? (som det är tänkt)

Permalänk
Hedersmedlem

Ja.

Visa signatur

Vim
Kinesis Classic Contoured (svart), Svorak (A5)
Medlem i signaturgruppen Vimzealoter.

Permalänk

Fast betänk att programmet inte körs var femte sekund, det körs upprepade gånger med fem sekunder mellan varje körning. Om programmet tar fem sekunder att köras, så kommer det alltså att köras var tionde sekund.

Permalänk
Medlem

Ja det är precis så jag vill att det ska fungera.
Hur kan man lättast styra av och på av detta på distans? php?

Permalänk
Hedersmedlem
Citat:

Ursprungligen inskrivet av pettan
Ja det är precis så jag vill att det ska fungera.
Hur kan man lättast styra av och på av detta på distans? php?

ssh

Visa signatur

Nu med kortare användarnamn, men fortfarande bedövande långa inlägg.

Permalänk
Medlem

Varför behöver du köra ett program var femte sekund?
Låter mest som en dålig lösning, imo

Visa signatur

Computer science is no more about computers than astronomy is about telescopes.

@oscar:prutt.party / monotux@freenode

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av monotux
Varför behöver du köra ett program var femte sekund?
Låter mest som en dålig lösning, imo

Jasså, varför är det en dålig lösning?

Om han vill att nått ska läsas in/uppdateras var femte sekund så finns det väl inte så många andra sätt än att upprepa proceduren var femte sekund..

Det du kan göra är att göra ett bash-script som läser in innehållet i en fil i din www-root eller så, och att scriptet körs så länge innehållet i filen är 1 och om innehållet är 0 slutar den köra php-programmet men upprepas istället var 5e sekund eller så och kollar istället variabeln.

lite while och if-satser borde fixa det

Sen när du vill stoppa har du en webbsida som du går in på som helt enkelt bara skriver dit en 0a istället, och tvärtom när du vill starta.

Edit: nånting liknande detta (skrev ihop det snabbt, har inte testat det, fattas säkert lite ; och så...)

T1=`cat variabel.fil` while true; do if [ "$T1" = "1" ]; then ./program.php sleep 5 else sleep 5 fi done

Sen en PHP-fil som sagt, som sätter värde 1 eller 0 i variabel.fil beroende på om du vill köra eller inte

Visa signatur

Kör väl en klassisk signatur:
9900K @ 5GHz/128GB 3200MHz DDR4/3x1TB NVME/6800XT på Aorus Z390 Elite
Samsung C34F791, Svive 34C801, Xiaomi 34", Logitech MX Master 3 + G512...
Behöver för jobb, ej gamer.

Permalänk
Medlem

Perfekt, precis vad jag vill åstadkomma