Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Scripts bundelen  (gelezen 603 keer)

wr19026

  • Gast
Scripts bundelen
« Gepost op: 2007/01/23, 01:13:05 »
Waar ik naar op zoek ben is een manier om meerdere scripts dmv één "master" script te runnen.

Ik heb nu script1, script2, script3 etc. in /etc/cron.daily staan. Deze wil ik eigenlijk achter elkaar laten lopen (dus als script1 klaar is start script2, na script2 start script3 etc.).

De scripts zijn vrijwel identiek, alleen een paar kleine verschillen in de parameters (welke directories te backuppen en waar de backup naar toe geschreven moet worden).

Nu heb ik twee vragen:
1. kan dit (en hoe)?
2. hoe kan ik in het "master"script een mount / unmount aan het begin en eind doen, aangezien ik m'n backup directory toch liever alleen maar voor de backup mount.

Alvast bedankt!

Offline jgoor

  • Lid
  • Steunpunt: Nee
Scripts bundelen
« Reactie #1 Gepost op: 2007/01/23, 09:13:49 »
Maak een batchfile.

#!/usr/bin/sh

mount /dev/filesystem_naar_keuze
/path/toscript1 arg1 arg2
/path/toscript2 arg3 arg4
/path/toscript3 arg5 arg6
/path/toscript4 arg7 arg8
umount /dev/filesystem_naar_keuze
En roep deze batchfile vanuit de cron aan.

wr19026

  • Gast
Scripts bundelen
« Reactie #2 Gepost op: 2007/01/23, 13:19:54 »
Ok ik denk dat ik het snap. Maar wat bedoel je precies met arg1 arg2 etc?

Dit is wat ik in m'n test batch heb:
#!/usr/bin/sh

# Mount /backup
mount /dev/sdc1

# Run backup scripts
/etc/cron.daily/backup-web6.cron &> /dev/null
/etc/cron.daily/backup-web7.cron &> /dev/null
/etc/cron.daily/backup-web8.cron &> /dev/null

# Unmount /backup
umount /dev/sdc1

En dit is de foutmelding die ik krijg als ik de batch (handmatig) draai:
bash: /etc/cron.daily/backup.test: /usr/bin/sh: bad interpreter: No such file or directory

Offline jgoor

  • Lid
  • Steunpunt: Nee
Scripts bundelen
« Reactie #3 Gepost op: 2007/01/23, 13:58:30 »
Sorry... foutje...  begin het script met:

#!/bin/sh
i.p.v.
#!/usr/bin/sh


Met 'arg1' bedoel ik de argumenten (of ook wel parameters genoemd)
Je vertelt dat dat het enige is waarin ze verschillen.
Daaruit maak ik op dat de scripts gelijk zijn, en afhankelijk van de opgegeven parameters  anders functioneren.
Ik zie dat je geen parameters bedoeld maar gewoon verschillende scriptnamen gebruikt.

Als je zoals door mij aangegeven die eerste regel veranderd in '#!/bin/sh' zou het moeten werken. Daar komt nl die foutmelding vandaan.
Suc6!

wr19026

  • Gast
Scripts bundelen
« Reactie #4 Gepost op: 2007/01/23, 15:27:32 »
'k Heb er zelf ook overheen gelezen :) Maar de aanpassing gedaan en het werkt perfekt, dank je voor je hulp!