printf
A printf
a shell-be épített utasítás (és kiegészítő alkalmazás), amely elfogadja a formázó sztringeket, amelyek meghatározzák az elemek formátumát, és hogy mely elemekre kell ezeket alkalmazni. Habár az utasítás neve azt sugallja, a parancs kimenete nem nyomtatóra irányított, hanem az STDOUT
-ra. A formázó sztring karakterei átmásolódnak a kimenetre, amennyiben viszont összekapcsolódnak a %
karakterrel, úgy az elem formázását hajtják végre. A standard formátumhoz képest a formázott annyival több, hogy a %b
segítségével is meghívhatóak a „visszaperes escape szekvenciák” (backslash escape sequences) (például a \n
az új sorért), és a %q
olyan elemet ad kimenetként, amely shell parancsként is értelmezhető. A formázó sztring újrafelhasználható, ha több elem is megtalálható a leírásában (format specs). A kihasználatan formátumleírók nulla értékűek, vagy null sztringek.
Szekvenciák értelmezése
[szerkesztés]A printf az \0ooo
szekvenciát oktális számként értelmezi, (az ooo
0-3 számjegy) meghatároz egy nyomtatandó karaktert, az \xhhh
szekvenciát hexadecimális számként értelmezi, (a hhh
1-3 számjegy) meghatároz egy nyomtatandó karaktert. Egy további escape szekvencia az \c
, ami után a printf
nem nyomtat tovább. A %b
utasítás kinyomtatja az argumentum karakterláncát a \
escape szekvenciákkal értelmezve, ahogy formátum meghatározza.[1]
Példa
[szerkesztés]for NUMBER in 4 6 8 9 10 do printf " >> %03d %d<< \n" $NUMBER $RANDOM done >> 004 26305<< >> 006 6687<< >> 008 20170<< >> 009 28322<< >> 010 4400<<
Példakimenet formázása a bash-ba épített printf segítségével: printf [-v var] format [arguments]
Példakimenet formázása a printf alkalmazás segítségével: printf format [arguments ...]
Jegyzetek
[szerkesztés]- ↑ http://man.cx/printf(1)/hu Magyar printf manual
Fordítás
[szerkesztés]Ez a szócikk részben vagy egészben a Printf (Unix) című angol Wikipédia-szócikk fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.
További információk
[szerkesztés]- Hivatalos printf man page, 2011 május (Angol)
- Linux / Unix Command: printf (Angol) Archiválva 2011. december 15-i dátummal a Wayback Machine-ben