← Back to team overview

sslug-teknik team mailing list archive

Re: Shell-scripts

 

Mark Holm wrote:

> Jeg prøver i øjeblikket at sætte mig ind i shell-programmering, og der er
> lige en
> enkelt ting, som jeg ikke helt kan gennemskue - hvad betyder det, når man
> sætter kantede paranteser rundt om noget, f.eks.:
> 
> if [ ! -f /etc/adjtime ]
> 
> eller
> 
> . /etc/default/rcS
> [ "$GMT" = "-u" ] && GMT="--utc"
> 
> hvad betyder ovenstående eksempler?. For mig at se, kunne man lige så godt
> i det første eksempel skrive: if ! -f  /etc/adjtime - eller hvad?

Prøv "man test" eller "man [ " og "man bash"  :))

Det er blot en anden måde at kalde test.  [ og test er faktisk
inbyggede funktioner i bash, men hos mig findes de også som
filer (samme fil, blot hardlinket):

 157823 -rwxr-xr-x   2 root     root        16544 nov 19  1998 /usr/bin/[
 157823 -rwxr-xr-x   2 root     root        16544 nov 19  1998 /usr/bin/test

Så 
  if [ ! -f /etc/adjtime ]
kan oversættes med :
  if test ! -f /etc/adjtime


-- 
mvh Frank Damgaard  frda@xxxxxxxxxxxxx | frank@xxxxxxxx |fido  2:236/15.2


References