Sida 1 av 1

crontab i ett script?

Postat: 20 dec 2008, 01:08
av ZX Spectrum
Håller på att skriva ett script för att ha när jag installerar om datorn. Bland annat kommer rader skrivas till sources.list, installation av mina programvaror och nu till mitt problem.
Ska lägga till rader till crontab och då till användaren (inte root).
När jag skriver crontab -u <användarnamn> -e så får jag upp sökvägen /tmp/crontab.yVz1QY/crontab.
Tänkte mig någon typ av echo-kommando på samma sätt som jag skrev rader till sources.list.

Kod: Markera allt

echo "blabla" >> bla.bla
Dessa sysslor ska in i crontab under min användare:

@reboot rsync --delete --progress -rvt ~/Genealogi /media/Lilla/backup
@reboot rsync --delete --progress -rvt ~/Bilder /media/Lilla/backup
@reboot tv_grab_se_swedb --days 14 --offset -7 --output /home/<användarnamn>/.maxemumtvguide/tv.xml

Re: crontab i ett script?

Postat: 20 dec 2008, 01:33
av andol
I Ubuntu så bor crontabs filer under /var/spool/cron/crontabs/

Dessa ska du dock helst undvika att peta på direkt.

Vill du automagiskt mata crontab kan du antingen förse innehåll från en fil eller från stdin.

Kod: Markera allt

crontab [i]filnamn[/i]

Kod: Markera allt

echo ... | crontab -
Notera att detta ersätter eventuellt befintligt innehåll. Skriptet måste sålunda även se till att läsa av och lägga till gammalt innehåll.

Re: crontab i ett script?

Postat: 20 dec 2008, 01:45
av Konservburk
andol skrev:Notera att detta ersätter eventuellt befintligt innehåll. Skriptet måste sålunda även se till att läsa av och lägga till gammalt innehåll.
Jag löste den biten så här...

Kod: Markera allt

crontab -l | sed '$a * * * * * kommando' | crontab -

Re: crontab i ett script?

Postat: 20 dec 2008, 01:50
av ZX Spectrum
crontab för min användare verkar vara tom vid installation.

Vad betyder minustecknet i "crontab -" ?

Jag skulle helt enkelt skriva detta i scriptet?

Kod: Markera allt

echo "@reboot rsync --delete --progress -rvt ~/Genealogi /media/Lilla/backup" | crontab - 

Re: crontab i ett script?

Postat: 20 dec 2008, 14:56
av ZX Spectrum
Det fungerade inte alls med kommandona som ni rekommenderade. Vad är "sed" för ett kommando?
Problemet är att jag inte kan hitta crontab-filen för min användare. crontab för root är lätt att hitta och ligger under /etc/crontab

Re: crontab i ett script?

Postat: 20 dec 2008, 15:06
av micke_nordin
ZX Spectrum skrev:Vad är "sed" för ett kommando?

Kod: Markera allt

man sed
Du kan t.ex. klippa och klistra i en ström:
echo "Picke" | sed 's/P/M/'


/Micke