Sida 1 av 1

En enkel scriptfråga

Postat: 10 dec 2012, 16:55
av look2
Har en riktigt basic skriptfråga.

Jag har ett 10 tal skript som skall köras en gång i minuten. Istället för att lägga in alla dessa som ett crocnjob så måste det väl vara smartare att göra ett script som triggar resterande skript.

Är det bara att skriva..

\sökväg\till\script\./script1
\sökväg\till\script\./script2
\sökväg\till\script\./script3

osv? eller är det mer avancerat än så?

Re: En enkel scriptfråga

Postat: 10 dec 2012, 17:48
av ubot
Du skapar en fil (script.bash) som ser ut så här:

Kod: Markera allt

#!/bin/bash
./path/to/script0 &
./path/to/script1 &
./path/to/script2 &
./path/to/script3 &
./path/to/script4 &
o.s.v.
Därefter så lägger du in sökvägen till filen i ett cron job. Då kommer alla skript att köras när filen (skriptet) som innehåller ./path/to/script[0-9] körs. &-tecknet används för att köra skripten i bakgunden. Det innebär att skripten exekveras ett efter ett utan att det förra skriptet måste ha kört klart först.
Glöm inte sätta exekveringsrättigheter på alla skripten med:

Kod: Markera allt

sudo chmod +x /path/to/script
Det gäller även skriptet som du lägger ./path/to/script[0-9]-skripten i. Lägg sedan in ett crontab med kommandot:

Kod: Markera allt

crontab -e
Använd inte sudo crontab -e annat än om du verkligen måste köra skripten som root.
Jag tror att cron job:et ska se ut så här:

Kod: Markera allt

*/10 * * * * ./path/to/script.bash

Re: En enkel scriptfråga

Postat: 10 dec 2012, 22:30
av look2
Tack för snabbt svar, men det verkar inte som det vill lira.
Det är pearl script som skall köras, spelar det någon roll?
Jag får iallafall ett felmeddelande som säger att filen inte finns

Re: En enkel scriptfråga

Postat: 10 dec 2012, 22:36
av look2
tog jag bort punkten i början av sökvägen så verkade det fungera...
så ät det blev.

/path/to/script1 &
/path/to/script2 &

Re: En enkel scriptfråga

Postat: 11 dec 2012, 20:42
av ubot
look2 skrev:tog jag bort punkten i början av sökvägen så verkade det fungera...
så ät det blev.

/path/to/script1 &
/path/to/script2 &
Ja, ja. Fel av mig. Det är bara om du står i katalogen som du behöver använda ./script.