Comanda UNIX printf este folosită în special în scripturi pentru tipărirea pe ecran a datelor. Comanda provine din limbajul C, unde există o funcție cu același nume.
Comanda este implementată în pachetul GNU coreutils. Pe unele sisteme, o comandă printf cu o funcționalitate similară este de asemenea disponibilă ca un bash built-in. Pentru a distinge între cele două, la invocare se poate folosi cale completă a executabilului (/usr/bin/printf), sau poate fi invocată folosind env.
printf FORMAT [ARGUMENTE]
unde FORMAT controlează modul în care sunt tipărite pe ecran argumentele. Formatul poate fi:
Formatul acceptă de asemenea formele %CHAR din limbajul C, unde CHAR poate fi una din literele d, i, o, u, x, X, f, e, E, g, G, c sau s.
printf ca un bash built-in:
$ printf "culoare %s, număr %d\n" albastru 23 culoare albastru, număr 23
Comanda printf:
$ /usr/bin/printf "culoare %s, număr %d\n" albastru 23 culoare albastru, număr 23
Invocarea folosind env:
$ env printf '\u20AC 14.95 \n' € 14.95
În limbajul C, printf desemnează o familie de funcții. Se poate tipări pe ecran (printf), într-un fișier (fprintf), sau într-un string (sprintf). Funcții pentru procesarea unei liste variabile de argumente (vprintf, ...) sunt de asemenea disponibile.
#include <stdio.h> int printf(const char *format, ...); int fprintf(FILE *stream, const char *format, ...); int sprintf(char *str, const char *format, ...); int snprintf(char *str, size_t size, const char *format, ...); #include <stdarg.h> int vprintf(const char *format, va_list ap); int vfprintf(FILE *stream, const char *format, va_list ap); int vsprintf(char *str, const char *format, va_list ap); int vsnprintf(char *str, size_t size, const char *format, va_list ap);
Exemplu:
printf("Color %s, number1 %d, number2 %05d, hex %x, float %5.2f, unsigned value %u.\n",
"red", 123456, 89, 255, 3.14159, 250);
va tipări pe ecran:
Color red, number1 123456, number2 00089, hex ff, float 3.14, unsigned value 250.
Unix (mai multe) | Programe în linia de comandă pentru|||
Management de fișiere: | cat | cd | chmod | chown | chgrp | cksum | cmp | cp | du | df | file | fsck | ln | ls | lsof | mkdir | mount | mv | pwd | rm | rmdir | split | touch | ||
Management de procese: | at | chroot | cron | exit | kill | killall | nice | pgrep | pidof | pkill | ps | pstree | sleep | time | top | wait | ||
Management utilizator/mediu: | env | finger | id | mesg | passwd | su | sudo | uname | uptime | w | wall | who | whoami | write | ||
Procesare text: | awk | comm | cut | ed | ex | fmt | head | iconv | join | less | more | paste | sed | sort | tac | tail | tr | uniq | wc | xargs | ||
Programare Shell: | basename | echo | expr | false | printf | test | true | unset | Imprimare: lp | |
Communicații: inetd | netstat | ping | rlogin | traceroute |
Căutare: find | grep | strings |
Diverse: banner | bc | cal | dd | man | size | yes |