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

  1. 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