printf je příkaz používaný v příkazové řádce pro formátování výstupu. Předlohou pro tento příkaz byla stejnojmenná funkce implementovaná v základní knihovně stdio.h pro jazyky C a C++.
Implementace pro GNU coreutils byla napsána Davidem MacKenziem .
Použití Syntaxe příkazu printf je velmi podobná syntaxi předlohové funkce z knihovny stdio.h: $ printf "%.2f\n" "11.4243" "21.5534" 11.42 21.55
Oproti předlohové funkci implementované v stdio.h však unixové implementace nabízí další specifikátory: %q a %b .
Specifikátor %b byl vytvořen jako nadstavba specifikátoru pro stringy (%s) a je schopný správně interpretovat escapování znaků:
$ printf "%s" "Ahoj\t" "svete" Ahoj\tsvete
$ printf "%b" "Ahoj\t" "svete" Ahoj svete
Specifikátor %q je pak užitečný v případě, je-li potřeba použít výstup příkazu printf jako vstup pro jiný příkaz.
Seznam některých specifikátorů Kompletní seznam specifikátorů je dostupný v manuálu příkazu printf (man printf) Specifikátor Význam Použití Výstup %f Desetinná čísla s různou přesností printf %.3f 3.14159 3.142 %d nebo %i Celá čísla printf %d 3.14159 3 %e Vědecká notace desetinných čísel printf %e 3.14159 3.141590e+00 %g Vědecká nebo normální reprezentace desetinných čísel, vybrána kratší reprezentace printf %g 3.14159 3.14159 %s Text printf %s "Lorem \\ ipsum" Lorem \\ ipsum %b Text s escapováním znaků printf %b "Lorem \\ ipsum" Lorem \ ipsum %% Vrací % printf %% "Lorem \\ ipsum" % %q Formátuje výstup pro zpracování dalšími příkazy printf %q "Lorem \\ ipsum" Lorem \ ipsum
Reference
Kategorie:Standardní unixové příkazy Kategorie:Svobodný software Kategorie:Linux