Skip to main content

The printf command inserts arguments into a user-defined string of text, creating formatted output.

# To print a text message:
printf "%s\n" "Hello world"

# To print an integer in bold blue:
printf "\e[1;34m%.3d\e[0m\n" 42

# To print a float number with the unicode Euro sign:
printf "\u20AC %.2f\n" 123.4

# To print a text message composed with environment variables:
printf "var1: %s\tvar2: %s\n" "$VAR1" "$VAR2"

# To store a formatted message in a variable (does not work on zsh):
printf -v myvar "This is %s = %d\n" "a year" 2016