printf (Unix)

printf
Utvecklare Olika öppen källkod och kommersiella utvecklare
Operativ system Unix och Unix-liknande
Plattform Cross-plattform
Typ Kommando
Licens coreutils : GPLv3+

I Unix- och Unix-liknande operativsystem är printf (" print f ormatted") ett inbyggt skal ( och verktygsprogram) som formaterar och skriver ut data.

Kommandot accepterar en printf-formatsträng , som anger metoder för att formatera objekt och en lista över objekt som ska formateras . Uppkallad historiskt efter avsikten att skriva ut till en skrivare , matas den nu faktiskt ut till stdout . Tecken i formatsträngen kopieras till utdata eller, om en % påträffas, används för att formatera ett objekt. Utöver standardformaten %b att printf expanderar escape-sekvenser för bakåtstreck (till exempel \n för nyrad ), och %q matar ut ett objekt som kan användas som skalinmatning . Formatsträngen återanvänds om det finns fler objekt än formatspecifikationerna. Oanvända formatspecifikationer ger ett nollvärde eller en nollsträng .

Historia

printf är en del av X/Open Portability Guide sedan nummer 4 av 1992. Den ärvdes till den första versionen av POSIX.1 och Single Unix Specification . Det dök först upp i 4.3BSD-Reno .

Versionen av printf som är paketerad i GNU coreutils skrevs av David MacKenzie. Den har tillägget %q för att escape-strängar i POSIX-skalformat.

Exempel

      






 $  för  NUMBER  i  4  6  8  9  10  > gör printf " >> %03d %d<< \n" $NUMBER $RANDOM  > klart  >> 004 26305<<  >> 006 6687<<  >> 008 20170<<  >> 009 28322<<  >> 010 4400<< 

Detta kommer att skriva ut en kataloglista, som emulerar 'ls':

printf "%s\n" *

Se även

externa länkar