Navigationskarta Insitutitionen för Datavetenskap Umeå Universitet

Laboration 4: mstatus

Introduktion

Kanske har du någon gång använt programmet finger för att kolla om en kompis är inloggad, eller om någon läst mail nyligen? Resultatet kan se ut ungefär såhär:

ath@lina% finger ath
Login name: ath         (messages off)  In real life: Tomas Halvarsson
Directory: /Home/staff/ath              Shell: /usr/local/bin/tcsh
On since Jul 26 09:28:00 on console from xdm
17 hours Idle Time
No unread mail
Project: Work until I die.
Plan:
I xlocked hoth at Thu, Sep 23 17:48:14 1999, leaving the following message:
Gone for today, maybe back tomorrow sometime...
If you want to contact me, send an e-mail to ath@cs.umu.se.

Hey! Stop touching me!
ath@lina% 

Det är den sista biten som är intressant för oss i den här laborationen; det som står efter rubriken Plan:. Den texten hämtas från filen .plan i användarens hemkatalog. Att lämna sådana meddelanden i .plan kan vara trevligt om man vill meddela andra ungefär vart man är. I denna laboration ska ni få göra just detta.

Det huvudsakliga syftet med denna laboration är att ni ska få öva på shellscriptsprogrammering. Ni kommer även att få bekanta er lite med en del standardprogram i UNIX såsom date, head, tail, uname, etc..

Din uppgift

Du ska skriva ett shellscript kallat mstatus. Syntaxen för detta script är följande:

mstatus {login|logout|xlock|unxlock} [meddelande]

mstatus kräver alltså att något av orden login, logout, xlock eller unxlock anges som första argument. Dessutom kan ett meddelande anges som andra argument om så önskas.

Exakt vad ni skriver till er .plan-fil är upp till er, men vissa saker ska finnas med. Dessa är:

Dessutom ställer vi ytterligare ett krav på er lösning: den ska vara skriven för sh. Andra shell/scriptspråk (t.ex. csh, tcsh, ksh, Perl eller php) är inte tillåtna.

Tips och saker att tänka på

Filer

Scriptet ska finnas i katalogen ~/edu/sysprog/lab4/ och vara läsbart för oss labrättare. Det ska heta mstatus. Din lösning ska gå att köra och rätta utan att vi ska behöva kopiera några andra filer.

Försättsblad

Ett försättsblad ska skrivas under och häftas ihop med labrapporten.

Överkurs

Känner du att laborationen är för lätt finns det en ziljon features man kan lägga till. Bara din fantasi sätter gränser.

Sista inlämningsdag: Kl. 23:59 den 4 oktober 1999.

Inlämnat detta sista datum skall vara ett (på Solaris-maskiner) fungerande shellscript, en välskriven laborationsrapport (i pappersformat) samt välkommenterad kod (tillsammans med labrapporten).

[an error occurred while processing this directive]