Bash-scriptet `echo $((2#$1))` konverterer et binært tal til et decimaltal. Her er en trinvis forklaring på, hvordan det fungerer:
$1
repræsenterer det første argument, der gives til scriptet. Dette argument forventes at være et binært tal (en streng af 0'er og 1'er).2#
angiver, at tallet, der følger, er i base 2 (binært). Dette er en del af Bash's aritmetiske udtrykssyntaks.$((...))
bruges til at evaluere aritmetiske udtryk i Bash. Inden for disse parenteser kan man udføre forskellige matematiske operationer.$1
er et binært tal, og det placeres efter 2#
inden for $((...))
, konverterer Bash det binære tal til et decimaltal.echo
bruges til at udskrive det resulterende decimaltal til terminalen.Eksempel:
./script.sh 1010
Her er 1010
det binære tal, der gives som argument. Scriptet vil udføre følgende:
$1
med 1010
.$((2#1010))
, hvilket konverterer det binære tal 1010
til det decimale tal 10
.10
til terminalen.Således vil outputtet være:
10
Spar dig selv for besvær og kom igennem din to-do liste i dag
1
Beskriv din opgave
2
Modtag bud
3
Få løst din opgave
Møbelsamling
Hjælp med at samle Ikea klædeskab
Maler
Klargøring af lejlighed til flyttesyn
Flyttehjælp
Flytning af 150 kvm hus til Roskilde fra København
Havearbejde
Beskæring af 4 større træer
IT support
Geninstallering af windows + programmer
Elektriker
Installation af Sonos musikanlæg i hus
Rengøring
Ugentlig rengøring af lejlighed (114kvm)
Flyttehjælp
Flytning af 150 kvm hus til Roskilde fra København
Elektriker
Opsætning af lamper i stue og soveværelse
Catering
3-retters menu til 14 mennesker