Re: bash programmering

From: Bobby Billingsley (none@bobby--bofh.dk.lh.bsd-dk.dk)
Date: Thu 24 Oct 2002 - 11:04:23 CEST


Date: Thu, 24 Oct 2002 11:04:23 +0200
From: Bobby Billingsley <none@bobby--bofh.dk.lh.bsd-dk.dk>
To: bsd-dk@bsd-dk.dk
Subject: Re: bash programmering

Hej Martin

Jeg vil foreslå et par ændringer...

On Wed, 23 Oct 2002, Martin Allan Jensen wrote:

> ---------------------------------
> #!/usr/compat/linux/bin/bash
#!/bin/sh
>
> $fil < /home/sites/local/mysql.domains;
(pist væk, slettes)
>
> for a in $fil; do
cat /home/sites/local/mysql.domains | while read a; do
> echo "Making dir for: $a";
> # Split domain in 2 .. subdomain and domain (www & domain.tld)
> b=`expr "$a" : '\([^.]*\)'`;
> c=`expr "$a" : '[^.]*\.\(.*\)'`;
>
> # Check if webstat dir exists
> if [ ! -d /home/sites/$c ]; then
> echo "...Making dir: /home/sites/$c";
> mkdir /home/sites/$c;
> fi
> done
> ---------------------------

Disse ændringer skulle virke.

Det er iøvrigt en god vane at undlade at bruge "magiske" filnavne begravet i
scriptet - væn dig hellere til at bruge en variabel. I dette tilfælde ville
jeg skifte "(pist væk, slettes)" ud med
"InputFile=/home/sites/local/mysql.domains" og så bruge ${InputFile} i resten
af scriptet. Dette gør det langt nemmere at ændre på når du om nogen tid
beslutter dig for at bruge en anden lokation til din domæne-liste ;)

/bobby

-- -- -- -- -- -- -- Bobby Billingsley, General Specialist -- -- -- -- -- -- --
 ___ .--.- \ | | _
`-,_`--'__/ x./_ | Remember to love while you dare | ASCII ribbon campaign ( )
//-_`--/ //\ \ | remember to live while you do | - against HTML email X
 \__/ `---' \__/ | -- Piet Hein | & vcards / \
                 Lat: 55° 40' 52" N Lon: 12° 32' 56" E
     Anyone without a sense of humor is at the mercy of the rest of us :->



This archive was generated by hypermail 2b30 : Wed 15 Nov 2006 - 18:24:24 CET