Avatar billede ingenting Nybegynder
16. februar 2002 - 12:14 Der er 25 kommentarer

Kørsel af script hver time via cron

Jeg har et cron job som, som skal starte 2 scripts. Det er faktisk det samme script som skal startes, men bare på 2 forskellige sider, det ser sådan ud:


# Crontab for side 1
00 * * * * cd /var/www/domains/bkj/side1.com/cgi-bin/; ./crawler.cgi
# Crontab for side 2
00 * * * * cd /var/www/domains/bkj/side2.com/cgi-bin/; ./crawler.cgi

Den kører kun scriptet på side 1, hvordan får jeg den til at køre begge??
Jeg har lavet en cronfil ved navn crontab.txt, hvor ovenståen ligger i, og via SSH skriver jeg så: crontab crontab.txt . Men den kører altså kun det første job og ikke det næste!! Findes der andre måder at gøre dette på??
Avatar billede erikjacobsen Ekspert
16. februar 2002 - 12:23 #1
Ligger crawler.cgi i begge kataloger ?
Avatar billede ingenting Nybegynder
16. februar 2002 - 12:27 #2
ja, det gør de.
Avatar billede erikjacobsen Ekspert
16. februar 2002 - 12:38 #3
Ja, undskyld, men det var den oplagte fejl :)

Åbner begge scripts samme fil(er) til skrivning, så der reelt kun
kan køre én af dem?

Kan du få den ene til at køre kl. hel og den anden kl. halv?
Avatar billede ingenting Nybegynder
16. februar 2002 - 12:42 #4
Jeg har 2 mapper, en for hvert domain. I disse mapper ligger de samme filer, men de har intet at gøre med hinanden.
Skulle de ikke kunne køre samtidig da?
Avatar billede erikjacobsen Ekspert
16. februar 2002 - 12:47 #5
Jo, der burde ikke været noget problem i det. Men det er der
jo åbenbart :(
Avatar billede ingenting Nybegynder
16. februar 2002 - 12:51 #6
Kan man ikke teste hvad der sker, får den til at skrive noget output hvorfor den ikke gør som den bliver bedt om?
Avatar billede ingenting Nybegynder
16. februar 2002 - 13:08 #7
Er du her?
Avatar billede erikjacobsen Ekspert
16. februar 2002 - 13:41 #8
Ikke hele tiden :)

Får du ikke en email, om hvad der er sket? Det sker nogle
steder.
Avatar billede ingenting Nybegynder
16. februar 2002 - 13:45 #9
Nej, det gør jeg ikke. Der findes ikke andre måder man kan lave det på?
Avatar billede erikjacobsen Ekspert
16. februar 2002 - 13:56 #10
Kan man ikke (jeg kan ikke huske det)

00 * * * * cd /var/www/domains/bkj/side2.com/cgi-bin/; ./crawler.cgi >output,txt
Avatar billede erikjacobsen Ekspert
16. februar 2002 - 13:58 #11
PS: Er der skriverettigheder i det ene katalog, og ikke i det andet?
Avatar billede ingenting Nybegynder
16. februar 2002 - 14:00 #12
Jeg har en log fil, hvir i jeg kan se om scriptet overhovedet starter. Det er kun det script som ligger i den første mappe som bliver startet, så jeg tror slet ikke det bliver startet 2 linie?
Avatar billede ingenting Nybegynder
16. februar 2002 - 15:57 #13
Opretter den selv den output.txt eller skal jeg oprette den?
Avatar billede erikjacobsen Ekspert
16. februar 2002 - 16:01 #14
Den bliver oprettet. Prøv evt. at skrive fuld sti.
Og så skal der måske paranteser om. Og måske er det
egentlig standarderror du skal have output fra,
Avatar billede ingenting Nybegynder
16. februar 2002 - 16:02 #15
Prøv lige at forklare alt dette igen?? Gerne lidt udspecificeret tak?
Avatar billede ingenting Nybegynder
16. februar 2002 - 16:08 #16
Nu har det kørt, ingen output.txt.

Desuden kan jeg se under side2 i crawlerlog at crawler ikke har kørt for denne side!!
Avatar billede Noone Nybegynder
16. februar 2002 - 19:49 #17
Prøv at køre dem med en halv times mellemrum....

Sådan her:

# Crontab for side 1
00 * * * * cd /var/www/domains/bkj/side1.com/cgi-bin/; ./crawler.cgi
# Crontab for side 2
30 * * * * cd /var/www/domains/bkj/side2.com/cgi-bin/; ./crawler.cgi

De vil stadig blive kørt hver time, men lidt forskudt.
Avatar billede Noone Nybegynder
16. februar 2002 - 19:50 #18
Prøv desuden, at køre crontab -l (Lille L) det giver en liste over dine cronjobs.
Avatar billede ingenting Nybegynder
17. februar 2002 - 15:47 #19
Den skriver følgende:

bkj@owh4 -- /var/www/domains/bkj > crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (cronfile.txt installed on Thu Jan 24 09:00:49 2002)
# (Cron version -- $FreeBSD: src/usr.sbin/cron/crontab/crontab.c,v 1.12.2.2 2000/12/11 01:03:31 obrien Exp $)
# Crontab for side1
00 * * * * cd /var/www/domains/bkj/side1.com/cgi-bin/; ./crawler.cgi
# Crontab for side2
00 * * * * cd /var/www/domains/bkj/side2.com/cgi-bin/; ./crawler.cgibkj@owh4 -- /var/www/domains/bkj >

Kan det være fordi, at der ikke er mellemrum mellem .cgi og så det den skriver selv. bkj@owh4?? Skal jeg prøve at lave nogle linieskift, ville dette hjælpe??
Avatar billede Noone Nybegynder
17. februar 2002 - 19:44 #20
crawler.cgibkj@owh4 -- /var/www/domains/bkj >

"bkj@owh4 -- /var/www/domains/bkj >" Er din prompt går jeg ud fra.

Tja, der er ikke linieskift tilsidst... Tror faktisk det er dit problem. Prøv et linebreak til slut, mener selv jeg har haft problemer med at der manglede et linebreak tilsidst i min crontab.
Avatar billede ingenting Nybegynder
27. februar 2002 - 10:56 #21
Hvis jeg skal køre et .php script 1 gang i døgnet, hvordan gøres det så?
Jeg har prøvet at køre det på samme måde som .cgi, men det virker ikke. Skal de køres på en speciel måde??
Læg lige Jeres kommentar som et svar.
Avatar billede erikjacobsen Ekspert
27. februar 2002 - 12:20 #22
Jeg mener du så skal skrive

  ... php dirscript.php

og evt have en fuld sti til PHP-programmet foran
Avatar billede ingenting Nybegynder
27. februar 2002 - 12:22 #23
Skal der ikke stå noget foran php??
Avatar billede erikjacobsen Ekspert
27. februar 2002 - 13:03 #24
Jo, måske

30 * * * * cd /det/katalog/du/skal/være/i/; /usr/local/bin/php ditscript.php
Avatar billede ingenting Nybegynder
07. marts 2002 - 19:39 #25
Jeg kan stadig ikke få det til at virke?? Jeg har ikke php installeret som standalone, men jeg har wget hvis dette kan hjælpe?
Jeg har prøvet med nogle af de eksempler som der tidligere har været her på exp omkring wget og cron, men kan ikke få det til at virke??
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester