[linux] $[ 3 * 3 ] en $(( 3 * 3 ))
Geert Stappers
stappers op stappers.nl
Za Jul 1 21:41:47 CEST 2023
On Sat, Jul 01, 2023 at 01:07:40PM +0200, Guus Snijders:
> Op vr 30 jun. 2023 21:30 schreef Geert Stappers:
> >
> > Mocht ik in "shell" moeten rekenen, dan gebruik ik $[ ]
> > voorbeeld
> > UUR=$[60 * 60]
> >
> > Nu kwam ik $(( )) als berekening tegen.
> >
> > Een testje gedaan.
> >
> > echo $[ 3 * 3 ]
> > echo $(( 3 * 3 ))
> >
> > Beide geven 9 als antwoord.
> >
> > Wat is er aan verschil?
> > Wanneer de ene gebruiken, wanneer de andere?
> >
>
> Even snel zoeken leverde deze link op:
>
> https://unix.stackexchange.com/questions/66977/difference-between-two-types-of-shell-arithmetic
Dank voor "arithmetic" als zoekterm.
> Kennelijk is $[] een deprecated vorm voor bash arithmetic
> en wordt $(()) geadviseerd.
Met behulp van bovenstaande link het advies teruggevonden.
Het staat er nog steeds. Het beantwoord ook mijn oorspronkelijk vraag.
Antwoorden:
Verschil is dat de $[ ] kandiaat is om verwijdert te worden.
De $(( )) is in bash meer toekomst bestendig.
> Dat zegt natuurlijk weinig over andere shells.
Inderdaad
Groeten
Geert Stappers
--
Silence is hard to parse
Meer informatie over de Linux
maillijst