Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Scripting op terminalniveau

5 views
Skip to first unread message

Cees

unread,
May 22, 2006, 7:53:26 AM5/22/06
to
Kan iemand mij vertellen hoe ik een bepaalde handeling, die in de terminal
moet worden uitgevoerd, iedere keer als mijn Mac is herstart automatisch kan
worden uitgevoerd.

Ik kom er niet uit, alvast bedankt voor het meedenken.

Groeten, Cees

robert

unread,
May 22, 2006, 8:35:22 AM5/22/06
to
Cees <cee...@zonnet.nl>:

> Kan iemand mij vertellen hoe ik een bepaalde handeling, die in de
> terminal moet worden uitgevoerd, iedere keer als mijn Mac is herstart
> automatisch kan worden uitgevoerd.

Verschillende mogelijkheden: vanuit /etc/crontab met '@reboot' (zie de
manpage: "man 5 crontab"), door het script in /etc/rc.local te zetten of
aan te laten roepen, of (de netste manier) door er een StartupItem van te
maken. Zie daarvoor o.a.
http://www.macdevcenter.com/pub/a/mac/2003/10/21/startup.html

--
robert

Patrick Machielse

unread,
May 22, 2006, 9:07:20 AM5/22/06
to
Cees <cee...@zonnet.nl> wrote:

Je kunt de opdrachten in een shell script zetten en dat vervolgens
automatisch laten uitvoeren.

een shell script is een tekstbestand dat er als volgt uitziet:

#!/bin/sh
opdracht1
opdracht2
enz.

De eerste regel geeft aan welke shell er gebruikt moet worden. (dit
hoeft dus niet sh te zijn)

Als je het hebt weggeschreven moet je het 'uitvoerbaar' maken met de
opdracht:

chmod +x mijnscript

Hierna kun je je script uitvoeren met de opdracht

./mijnscript

Dit bestand kun je vervolgens in Systeemvoorkeuren aan je inlog objecten
(Accounts -> Inloggen). Het nadeel hiervan is dat op deze manier altijd
de Terminal wordt opgestart. Wil je dat niet dan kun je het volgende
overwegen:

-) maak een applescript die de shell script uitvoert ('do shell script')
en voeg die toe aan je inlogobjecten.

-) voer de shell script uit met een launchd agent

Hiermee kun je wel weer even uit de voeten, denk ik...

patrick

robert

unread,
May 22, 2006, 1:15:04 PM5/22/06
to
Patrick Machielse <nor...@mail.invalid>:

> Dit bestand kun je vervolgens in Systeemvoorkeuren aan je inlog objecten
> (Accounts -> Inloggen).

Nu ging het om 'opstarten', niet om 'inloggen', maar misschien maakt dat de
OP niet veel uit.

> -) voer de shell script uit met een launchd agent

Heb jij dat ooit goed werkend gekregen? Ik niet namelijk :)

Ik wil at bootup ook een shellscript wat dingen laten instellen en
opstarten, maar dat launchd-ding gaat uit van processen die permanent
blijven draaien terwijl een shellscript eenmalig moet draaien.

--
robert

Message has been deleted

Patrick Machielse

unread,
May 22, 2006, 3:02:27 PM5/22/06
to
robert <{n.c.s.m}@allyourbass.org.invalid> wrote:

> Patrick Machielse <nor...@mail.invalid>:


>
> > -) voer de shell script uit met een launchd agent
>
> Heb jij dat ooit goed werkend gekregen? Ik niet namelijk :)
>
> Ik wil at bootup ook een shellscript wat dingen laten instellen en
> opstarten, maar dat launchd-ding gaat uit van processen die permanent
> blijven draaien terwijl een shellscript eenmalig moet draaien.

Ik heb er zelf nog niet echt mee gewerkt, maar ik heb wel bemoedigende
berichten gehoord. launchd kan volgens mij ook taken eenmalig uitvoeren.

ken je lingon:
<http://lingon.sourceforge.net/>

StartupItems werken ook nog steeds onder Tiger :-)

patrick

robert

unread,
May 22, 2006, 3:56:15 PM5/22/06
to
Patrick Machielse <nor...@mail.invalid>:

> robert <{n.c.s.m}@allyourbass.org.invalid> wrote:
>
>> Ik wil at bootup ook een shellscript wat dingen laten instellen en
>> opstarten, maar dat launchd-ding gaat uit van processen die permanent
>> blijven draaien terwijl een shellscript eenmalig moet draaien.
>
> Ik heb er zelf nog niet echt mee gewerkt, maar ik heb wel bemoedigende
> berichten gehoord. launchd kan volgens mij ook taken eenmalig uitvoeren.

Dacht ik ook, maar toch werkte het niet :(

> ken je lingon:
> <http://lingon.sourceforge.net/>

Ja, al had ik daar een oude versie van staan. Eens met de nieuwe een
launchdaemon gemaakt, zien of dat werkt :)

> StartupItems werken ook nog steeds onder Tiger :-)

Klopt, maar die schijnen verouderd te zijn ;)

--
robert

robert

unread,
May 22, 2006, 3:58:56 PM5/22/06
to
Bert Rozenberg <Bert.Ro...@lekkerthuis.com>:

> On 22 May 2006 12:35:22 GMT, robert wrote:
>
>> Verschillende mogelijkheden: vanuit /etc/crontab met '@reboot' (zie de
>> manpage: "man 5 crontab"), door het script in /etc/rc.local te zetten
>> of aan te laten roepen, of (de netste manier) door er een StartupItem
>> van te maken.
>
> Dat was vroeger (pre Mac OS X 10.4). Tegenwoordig gebruiken 'we'
> hiervoor User Agents, System Agents, User Daemons en System Daemons.

Dat ligt er maar aan, er zijn functionaliteiten die StartupItems bieden die
launchd niet kan bieden. Hetgeen door Apple beschreven wordt op
http://developer.apple.com/macosx/launchd.html

--
robert

Cees

unread,
May 22, 2006, 4:09:00 PM5/22/06
to
Goed te zien dat het mogelijk is, maar nu ben ik een echte Mac gebruiker,
met de nadruk op gebruiker en weet dus niet zo gek veel van dit soort
'technische' dingen.

Wat er moet gebeuren in mijn script is niet zo bijzonder veel; in de dir
'Applications' staat een map die heet 'ODB' daarin staat een bestand dat ook
ODB heet en dat moet gestart worden met het commando ./odb start. Wanneer de
Mac herstart wordt zou dit automatisch moeten gebeuren.
Kun je me aangeven
1.hoe het script er dan uit moet zien
2.in welk programma ik dit moet maken
3.waar het geplaatst moet worden om het te laten werken

Wederom alvast bedankt voor het antwoord.

Cees

--
Op 22-05-2006 15:07, schreef "Patrick Machielse" <nor...@mail.invalid> in
1hfqu96.17eby5kcsmkmsN%nor...@mail.invalid het volgende:

Message has been deleted

robert

unread,
May 22, 2006, 4:41:36 PM5/22/06
to
Cees <cee...@zonnet.nl>:

> Goed te zien dat het mogelijk is, maar nu ben ik een echte Mac
> gebruiker, met de nadruk op gebruiker en weet dus niet zo gek veel van
> dit soort 'technische' dingen.
>
> Wat er moet gebeuren in mijn script is niet zo bijzonder veel; in de dir
> 'Applications' staat een map die heet 'ODB' daarin staat een bestand dat
> ook ODB heet en dat moet gestart worden met het commando ./odb start.
> Wanneer de Mac herstart wordt zou dit automatisch moeten gebeuren.

Met het in deze thread genoemde 'lingon' zou dat mogelijk moeten zijn. Kies
daarbij voor 'Assistant' en dan 'Run a job at startup'.

Bij het volgende scherm kies je een zelf-verzonnen label, bijvoorbeeld
'StartODB', je vinkt 'Launch only when I log in' uit (je wilt immers dat
'ie bij het booten start, niet bij het inloggen) en eventueel 'Must run as
root' aan indien het bestand als Administrator gestart moet worden.

Bij het laatste scherm vul je bij Job in:
/Applications/ODB/odb start

Dan 'Create', en kijken of het werkt :)

--
robert

Message has been deleted

Cees

unread,
May 22, 2006, 5:27:11 PM5/22/06
to
Bert, Robert,

Bedankt voor deze hulp, ik ga er morgen mee aan de slag, als ik op de zaak
ben kan ik het uitproberen. Ik houd jullie op de hoogte.

Nogmaals bedankt!

Cees


Op 22-05-2006 22:42, schreef "Bert Rozenberg"
<Bert.Ro...@lekkerthuis.com> in
1az4conlqmjeb$.1ofk3e3f...@40tude.net het volgende:

> On Mon, 22 May 2006 22:09:00 +0200, Cees wrote:
>
>> Goed te zien dat het mogelijk is, maar nu ben ik een echte Mac gebruiker,
>> met de nadruk op gebruiker en weet dus niet zo gek veel van dit soort
>> 'technische' dingen.
>>
>> Wat er moet gebeuren in mijn script is niet zo bijzonder veel; in de dir
>> 'Applications' staat een map die heet 'ODB' daarin staat een bestand dat ook
>> ODB heet en dat moet gestart worden met het commando ./odb start.
>

> Op <http://www.mrose.nl/ODB.zip> staat 'ie voor je klaar.
> In de zip tref je drie versies van het script aan: een tekst-versie
> (odb.applescript), een Applescript (odb.scpt) en een gecompileerde versie
> (odb.app). De laatste kun je gewoon aanklikken. Als hij werkt, plaats je
> hem eerst ergens in je map (hulp)programma's en vervolgens sleep je hem
> naar de login-items van je account (systeemvoorkeuren).
>
> Succes.

Cees

unread,
May 23, 2006, 3:19:36 AM5/23/06
to
Helaas maar het lukt nog niet, zowel de applescript versie van Bert als de
Launchdeamon van Bert geven het zelfde resultaat. Hoe het zou moeten werken
is me duidelijk, maar de acties zelf werken niet.
Wanneer ik handmatig naar de terminal ga en daar /Applications/ODB/odb start
intik, zie ik weliswaar 'Executing start' staan, maar hij wordt niet
gestart, terwijl als cd/ Applications/ODB <enter> en dan ./odb start doe,
dan wordt ie wel opgestart.

Enig idee hoe dit laatste in het script verwerkt kan worden?

Op 22-05-2006 22:41, schreef "robert" <{n.c.s.m}@allyourbass.org.invalid> in
slrne748g0...@home.allyourbass.org het volgende:

robert

unread,
May 23, 2006, 4:44:46 AM5/23/06
to
Cees <cee...@zonnet.nl>:

> Helaas maar het lukt nog niet, zowel de applescript versie van Bert als
> de Launchdeamon van Bert geven het zelfde resultaat. Hoe het zou moeten
> werken is me duidelijk, maar de acties zelf werken niet.
> Wanneer ik handmatig naar de terminal ga en daar /Applications/ODB/odb start
> intik, zie ik weliswaar 'Executing start' staan, maar hij wordt niet
> gestart, terwijl als cd/ Applications/ODB <enter> en dan ./odb start doe,
> dan wordt ie wel opgestart.

Ah, dan heeft het programma het kennelijk nodig dat de current working
directory op /Applications/ODB staat.

> Enig idee hoe dit laatste in het script verwerkt kan worden?

Met het genoemde Lingon kan je de Working Directory instellen.

--
robert

Message has been deleted

"James T. Kirk©"

unread,
May 23, 2006, 9:01:55 AM5/23/06
to
Cees schreef:

alles bovenaan...

Cees geen probleem dat je Entourage van MS gebruikt, maar een echte
newsreader geeft je de mogelijkheid je aan te passen aan de nieuwsgroep
en onderaan te reageren. www.leerquoten.nl.
--
take care,
____________________________Jim©
~ Van DOS via Debian naar Darwin ~

Cees

unread,
May 23, 2006, 9:27:40 AM5/23/06
to
Prima, graag zelfs, dit is het enige waar ik Entourage voor gebruik. Kun je
me aangeven wat ik moet gebruioken als newsreader?

Grt, Cees


Op 23-05-2006 15:01, schreef "James T. Kirk©"
<James-...@rommeleruit.inter.nl.net> in
447307c3$0$6659$19de...@news.inter.NL.net het volgende:

"James T. Kirk©"

unread,
May 23, 2006, 9:52:13 AM5/23/06
to
Cees schreef:

> Prima, graag zelfs, dit is het enige waar ik Entourage voor gebruik. Kun je
> me aangeven wat ik moet gebruioken als newsreader?
>
Nou, ik gebruik Thunderbird, anderen MacSoup, MTNewswatcher, Hogwasher,
Pan, Opera, etc. Google maar eens:
http://www.newsreaders.com/mac/clients.html Je _moet_ overigens niets
specifieks gebruiken, maar bovenaan quoten (en knippen) en onderaan
antwoorden is wel de regel doorgaans. Bovenaan antwoorden is eigenlijk
"not-done".

Cees

unread,
May 23, 2006, 10:11:13 AM5/23/06
to
Op 23-05-2006 10:44, schreef "robert" <{n.c.s.m}@allyourbass.org.invalid> in
slrne75iru...@home.allyourbass.org het volgende:


Ik zie als ik de LaunchDeamon uitlees geen verschil als ik de Working
Directory instel of niet.

Ik heb ook de suggestie van Bert geprobeerd om cd /Applications/ODB/;
/Applications/ODB/ODB start in het geheel erin te zetten, maar helaas geen
resultaat.

Beter zo quoten mannen? ;-)

0 new messages