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

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

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

  1. http://man.cx/printf(1)/hu Magyar printf manual

Fordítá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

  • 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
Sablon:Unix parancsok
  • m
  • v
  • sz
Unix parancssoros programok és utasítások
Fájlrendszer
cat · cd · chmod · chown · chgrp · cksum · cmp · cp · dd · du · df · file · fsck · fuser · ln · ls · lsattr · lsof · mkdir · mount · mv · pwd · rm · rmdir · sha1sum · size · split · tee · type  · touch · umask
Processzek
at · chroot · cron · exit · kill · killall · nice · pgrep · pidof · pkill · ps · pstree · sleep · time · top · wait
Felhasználói környezet
env · finger · id · logname · mesg · passwd · su · sudo · uptime · tput · w · wall · who · whoami · write
Szövegkezelés
awk · banner · comm · cut · ed · ex · fmt · head · iconv · join · less · more · paste · sed · sort · strings · talk · tac · tail · tr · uniq · vi · wc · xargs
Shell programozás
alias · basename · case  · clear · dirname · echo · expr · false · for · if · printf · seq · test · true · uname · unset  · until  · while  · yes
Hálózat
dig · host · inetd · netstat · ping · rlogin · netcat · traceroute
Keresés
find · grep · locate · whereis · which · whatis
Dokumentáció
apropos · help · man
Egyéb
bc · cal · date · info · lp · history
  • Informatika Informatikai portál • összefoglaló, színes tartalomajánló lap