printf

printf formatteert en toont tekst — betrouwbaarder dan echo voor gebruik in scripts.

Basisgebruik

printf "Hallo wereld\n"
printf "Naam: %s, leeftijd: %d\n" "Jan" 30

Opmaakcodes

CodeBetekenis
%sString
%dGeheel getal
%fKommagetal
%.2fTwee decimalen
%10sRechts uitlijnen, breedte 10
%-10sLinks uitlijnen, breedte 10
%05dGetal met voorloopnullen
%xHexadecimaal

Escape-tekens

CodeBetekenis
\nNieuwe regel
\tTab
\\Backslash
\aPieptoon

Voorbeelden

Tabel opmaken:

printf "%-20s %8s %8s\n" "Bestand" "Grootte" "Datum"
printf "%-20s %8d %8s\n" "rapport.pdf" 1024 "2024-03"

Getal met voorloopnullen:

printf "%05d\n" 42
# 00042

Kommagetallen:

printf "%.2f%%\n" 99.567
# 99.57%

In een script zonder newline:

printf "Bezig... "
sleep 1
printf "Klaar.\n"

Tip

Gebruik printf in scripts in plaats van echoecho gedraagt zich inconsistent met escape-tekens op verschillende systemen en shells.

shellscripting