![]() |
Hei og Velkommen fra USA til UNIX og Linux Forums! Takk for besøket og Delta i vårt globale samfunn.
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her. |
Mer UNIX og Linux Forum Emner Du kan finne nyttig
|
||||
| Tråd | Tråd startet | Forum | Svar | Siste innlegg |
| standard cron shell | dummy_9746 | Shell programmering og Skripting | 2 | 10-13-2008 02:25 |
| Cron kjøring av shell script | ashish.sharma | Shell programmering og Skripting | 3 | 09-08-2008 02:57 |
| Er det mulig å ha mer enn én Cron i shell script? | Yamini Thoppen | AIX | 4 | 12-17-2007 03:23 |
| Shell script & cron | deppy82 | Shell programmering og Skripting | 3 | 08-02-2007 01:00 |
| Shell + Oracle + Cron jobb | pathanjalireddy | Shell programmering og Skripting | 1 | 04-07-2005 02:07 |
![]() |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
som en bedre Kjør av Cron eller Shell
Kjære Experts,
Jeg har et script definert i Cron som går hver 1 minutt. Code:
* * * * * /export/home/myscript.sh >/dev/null 2>&1 Men etter 1 minutt cron vil påkalle en annen forekomst (prosess) utføre myscript. I så fall tror du det er en sannsynlighet for å overlappende forekomsten og kan skape problem. Hvis det er en sjanse for overlappende kan være under shellscript (kjører det i bakgrunnen) er bra som vil kjøre hvert 1 minutt. Skriptet vil påkalle annet øyeblikkelig etter hvert minutt. Code:
#!/usr/bin/bash
while :
do
sleep 60 & pid=$!
/export/home/myscript.sh
wait $pid
done
/ / lilla |
|
||||
|
Det er en annen løsning på dette problemet, men du må legge til kode på `myscript.sh". Sett en slags låse mens programmet er runing, f.eks hvis programmet er et shell skript, kan du legge til følgende linjer:
Code:
...
lock=/export/home/.myscript.lock
trap "rmdir ${lock}; exit 2" 1 2 3 15
# Now lock. If lock fails, then propably the program is runing.
mkdir ${lock} || exit 0
...
Here comes the script code
...
# Now unlock, so another instance of this program can run in the future.
rmdir ${lock}
Bye ... |
|
||||
|
Sitat:
Code:
#!/usr/bin/bash
lock=/export/home/.myscript.sh.lock
trap "rmdir ${lock}; exit 2" 1 2 3 15
mkdir ${lock} || exit 0
...
Here comes my script code
...
rmdir ${lock}
Etter at jeg kan legge skriptet i Crontab. I dette tilfellet hver 1 minutt cron vil påkalle prosessen og barnet prosessen. Men i mellomtiden, vil programmet (myscript) kan kjøres med ulike prosess og barnet prosess id. sant? / / lilla |
|
||||
|
dessuten,
la si myscript.sh kjører og har under prosessen id - solaris: / home/user1> ps-ef | grep myscript.sh solaris 25907 10427 0 14:36:50? 0:00 / export / home / myscript.sh Jeg satte den myscript.sh i cron som 1 minutt intervall. Så, hver 1 minutt intervall solaris igjen kjøre myscript.sh. Tror du solaris mai prøver å assing neste myscript.sh med procss id 25907 (som indikerer overlappende)? procss id 25907 publiseres ..... |
![]() |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|