← Back to team overview

sslug-teknik team mailing list archive

Re: ett enkelt script?

 

Niels Müller Larsen wrote:
... skip ...


Kære Mogens og andre

Jeg vil mene at forklaringen snarere er at [ er et program!
 ~ $ ls -l /usr/bin/[
- -rwxr-xr-x  1 root root 25592 Jun  1  2005 /usr/bin/[
surprise? Jeg var i hvert fald engang.
Som alle programmer skal [ være adskilt fra sine argumenter af et
mellemrum.
En gang var [ linket til programmet test, men det er det i hvert
fald ikke længere på min Linux (Gentoo)

I mandrake 9.1 er [ linket til test.
Det er meget morsomt at [ er det samme som test, det har jeg aldrig vidst. Men det er genialt, det betyder jo, at et if statement kan skrives på en mere "naturlig" måde:
if [ $1 -eq 5 ] ; then
echo $1
fi
Firkant-paranteserne ser jo "naturlige" ud.
Hvis ikke dette link fandtes måtte man altså skrive:
if test $1 -eq 5  ; then
echo $1
fi
eller lidt pænere:
if (test $1 -eq 5)  ; then
echo $1
fi

--
Med venlig hilsen

Jørgen Heesche
mailto:heesche@xxxxxxxxxxx
Registered Linux User #401007


References