IPB
>  Man Pages > Unix > Solaris 10 11/06 > Section 1 > printf man page

printf man page

Section 1 - Solaris 10 11/06 Man Pages

Other operating system man pages available here


Advanced Search

Hopefully, this page is exactly what you are looking for, but if not, you can always find further assistance on Unix/Linux Forum!





User Commands                                           printf(1)



NAME
     printf - write formatted output

SYNOPSIS
     printf format [argument...]

DESCRIPTION
     The printf command writes formatted operands to the standard
     output. The argument operands are formatted under control of
     the format operand.

OPERANDS
     The following operands are supported:

     format          A string describing the  format  to  use  to
                     write  the  remaining  operands.  The format
                     operand  is  used  as  the   format   string
                     described  on  the   formats(5) manual page,
                     with the following exceptions:

                       o  A SPACE character in the format string,
                          in  any  context other than a flag of a
                          conversion specification, is treated as
                          an ordinary character that is copied to
                          the output.

                       o  A character in  the  format  string  is
                          treated as a  character, not as a SPACE
                          character.

                       o  In addition  to  the  escape  sequences
                          described  on  the   formats(5)  manual
                          page (\\, \a, \b, \f, \n, \r, \t,  \v),
                          \ddd,  where  ddd  is  a  one-, two- or
                          three-digit octal number, is written as
                          a byte with the numeric value specified
                          by the octal number.

                       o  The program does not precede or  follow
                          output  from  the  d  or  u  conversion
                          specifications  with  blank  characters
                          not specified by the format operand.

                       o  The program  does  not  precede  output
                          from  the  o  conversion  specification
                          with zeros not specified by the  format
                          operand.

                       o  An additional conversion character,  b,
                          is  supported  as follows. The argument
                          is taken to be a string that  may  con-
                          tain  backslash-escape  sequences.  The



SunOS 5.10          Last change: 28 Mar 1995                    1






User Commands                                           printf(1)



                          following  backslash-escape   sequences
                          are supported:

                            o  the escape sequences listed on the
                               formats(5)  manual  page  (\\, \a,
                               \b, \f, \n, \r, \t, \v), which are
                               converted  to  the characters they
                               represent

                            o  \0ddd, where ddd is a zero-, one-,
                               two-  or  three-digit octal number
                               that is converted to a  byte  with
                               the numeric value specified by the
                               octal number

                            o  \c, which is  written  and  causes
                               printf  to  ignore  any  remaining
                               characters in the  string  operand
                               containing   it,   any   remaining
                               string operands and any additional
                               characters in the format operand.



                     The interpretation of a  backslash  followed
                     by  any  other  sequence  of  characters  is
                     unspecified.

                     Bytes from the converted string are  written
                     until the end of the string or the number of
                     bytes indicated by the precision  specifica-
                     tion  is  reached. If the precision is omit-
                     ted, it is taken  to  be  infinite,  so  all
                     bytes  up to the end of the converted string
                     are written.  For  each  specification  that
                     consumes  an  argument,  the  next  argument
                     operand is evaluated and  converted  to  the
                     appropriate   type  for  the  conversion  as
                     specified  below.  The  format  operand   is
                     reused  as often as necessary to satisfy the
                     argument operands. Any extra c or s  conver-
                     sion  specifications  are  evaluated as if a
                     null string argument  were  supplied;  other
                     extra    conversion    specifications    are
                     evaluated as if a zero  argument  were  sup-
                     plied.  If  the  format  operand contains no
                     conversion   specifications   and   argument
                     operands   are   present,  the  results  are
                     unspecified. If a character sequence in  the
                     format  operand  begins  with a % character,
                     but does not form a valid conversion specif-
                     ication, the behavior is unspecified.



SunOS 5.10          Last change: 28 Mar 1995                    2






User Commands                                           printf(1)



     argument        The strings to be written to  standard  out-
                     put,  under the control of format. The argu-
                     ment operands are treated as strings if  the
                     corresponding  conversion  character is b, c
                     or s. Otherwise, it is evaluated as a C con-
                     stant,  as  described by the ISO C standard,
                     with the following extensions:

                       o  A  leading  plus  or  minus   sign   is
                          allowed.

                       o  If the leading character is  a  single-
                          or   double-quote,  the  value  is  the
                          numeric value in the underlying codeset
                          of the character following the  single-
                          or double-quote.


                     If an argument operand cannot be  completely
                     converted into an internal value appropriate
                     to the corresponding  conversion  specifica-
                     tion,  a  diagnostic  message  is written to
                     standard error and the utility does not exit
                     with  a zero exit status, but continues pro-
                     cessing any remaining  operands  and  writes
                     the  value accumulated at the time the error
                     was detected to standard output.




USAGE
     Notice that this printf utility, like the  printf(3C)  func-
     tion  on  which  it is based, makes no special provision for
     dealing with multi-byte characters when using the %c conver-
     sion  specification or when a precision is specified in a %b
     or  %s  conversion  specification.  Applications  should  be
     extremely cautious using either of these features when there
     are multi-byte characters in the character set.

     Field widths and precisions cannot be specified as *.

     For compatibility with previous versions of SunOS 5.x, the $
     format specifier is supported for formats containing only %s
     specifiers.

     The %b conversion specification is not part  of  the  ISO  C
     standard;  it  has been added here as a portable way to pro-
     cess backslash escapes expanded in string operands  as  pro-
     vided by the echo utility. See also the USAGE section of the
     echo(1) manual page for ways to use printf as a  replacement
     for all of the traditional versions of the echo utility.



SunOS 5.10          Last change: 28 Mar 1995                    3






User Commands                                           printf(1)



     If  an  argument  cannot  be  parsed   correctly   for   the
     corresponding  conversion  specification, the printf utility
     reports an error. Thus, overflow and  extraneous  characters
     at  the  end of an argument being used for a numeric conver-
     sion are to be reported as errors.

     It is not considered an error if an argument operand is  not
     completely  used  for  a  c  or  s conversion or if a string
     operand's first or second  character  is  used  to  get  the
     numeric value of a character.

EXAMPLES
     Example 1: Printing a series of prompts

     To alert the user and  then  print  and  read  a  series  of
     prompts:

     example% printf "\aPlease fill in the following: \nName: "
     read name
     printf "Phone number: "
     read phone

     Example 2: Printing a table of calculations

     To read out a list of right and wrong answers from  a  file,
     calculate  the percentage correctly, and print them out. The
     numbers are right-justified and separated by  a  single  tab
     character. The percentage is written to one decimal place of
     accuracy:

     example% while read right wrong ; do
        percent=$(echo "scale=1;($right*100)/($right+$wrong)" | bc)
        printf "%2d right\t%2d wrong\t(%s%%)\n" \
             $right $wrong $percent
     done < database_file

     Example 3: Printing number strings

     The command:

     example% printf "%5d%4d\n" 1 21 321 4321 54321

     produces:

         1  21
       3214321
     54321   0

     Notice that the format operand is used three times to  print
     all of the given strings and that a 0 was supplied by printf
     to satisfy the last %4d conversion specification.




SunOS 5.10          Last change: 28 Mar 1995                    4






User Commands                                           printf(1)



     Example 4: Tabulating conversion errors

     The printf utility tells the user when conversion errors are
     detected while producing numeric output; thus, the following
     results would be expected on an implementation  with  32-bit
     twos-complement  integers when %d is specified as the format
     operand:

     ____________________________________________________________________
    |   Arguments       Standard                 Diagnostic             |
    | 5a                   5         printf: 5a not completely converted|
    | 9999999999       2147483647    printf:  9999999999:  Results   too|
    |                                large                              |
    | -9999999999     -2147483648    printf:  -9999999999:  Results  too|
    |                                large                              |
    | ABC                  0         printf: ABC expected numeric value |
    |___________________________________________________________________|


     Notice that the value shown on standard output is what would
     be   expected   as   the  return  value  from  the  function
     strtol(3C). A similar correspondence exists between  %u  and
     strtoul(3C), and %e, %f and %g and strtod(3C).

     Example 5: Printing output for a specific locale

     In a locale using the  ISO/IEC  646:1991  standard   as  the
     underlying codeset, the command:

     example% printf "%d\n" 3 +3 -3 \'3 \"+3 "'-3"

     produces:

     ____________________________________________________________
    | 3       Numeric value of constant 3                       |
    | 3       Numeric value of constant 3                       |
    | -3      Numeric value of constant -3                      |
    | 51      Numeric value of the character `3' in the  ISO/IEC|
    |         646:1991 standard codeset                         |
    | 43      Numeric value of the character `+' in the  ISO/IEC|
    |         646:1991 standard codeset                         |
    | 45      Numeric value of the character `-' in  the  SO/IEC|
    |         646:1991 standard codeset                         |
    |___________________________________________________________|


     Notice that in a  locale  with  multi-byte  characters,  the
     value  of  a  character  is  intended to be the value of the
     equivalent of the wchar_t representation of the character.

     If an argument operand cannot be completely  converted  into
     an   internal   value   appropriate   to  the  corresponding



SunOS 5.10          Last change: 28 Mar 1995                    5






User Commands                                           printf(1)



     conversion specification, a diagnostic message is written to
     standard  error  and  the utility does exit with a zero exit
     status, but continues processing any remaining operands  and
     writes  the  value  accumulated  at  the  time the error was
     detected to standard output.

ENVIRONMENT VARIABLES
     See environ(5) for descriptions of the following environment
     variables that affect the execution of printf: LANG, LC_ALL,
     LC_CTYPE, LC_MESSAGES, LC_NUMERIC, and NLSPATH.

EXIT STATUS
     The following exit values are returned:

     0        Successful completion.



     >0       An error occurred.



ATTRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:

     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    |_____________________________|_____________________________|
    | Availability                | SUNWloc                     |
    |_____________________________|_____________________________|
    | CSI                         | enabled                     |
    |_____________________________|_____________________________|
    | Interface Stability         | Standard                    |
    |_____________________________|_____________________________|


SEE ALSO
     awk(1), bc(1), echo(1), printf(3C), strtod(3C),  strtol(3C),
     strtoul(3C),  attributes(5),  environ(5),  formats(5), stan-
     dards(5)














SunOS 5.10          Last change: 28 Mar 1995                    6





Man(1) output converted with man2html and wrapped by fishsponge

This page was generated on Wed Sep 12 21:37:09 GMT 2007

Your favourite pages:

No pages logged yet.
Trying to save cookie...

Top 10 most popular pages:

sqlite3 man page (5333 hits)
(openSUSE 10.2)

svn man page (5208 hits)
(FreeBSD 6.2)

adv_cap_autoneg man page (4870 hits)
(Solaris 10 11_06)

CPAN man page (4607 hits)
(Suse Linux 10.1)

ssh man page (4342 hits)
(Suse Linux 10.1)

ssh-socks5-proxy-connect man page (2874 hits)
(Solaris 10 11_06)

netcat man page (2717 hits)
(Suse Linux 10.1)

pprosetup man page (2487 hits)
(Solaris 10 11_06)

startproc man page (2471 hits)
(Suse Linux 10.1)

signal man page (2406 hits)
(Suse Linux 10.1)

Useful Links

Go Back

Visitor Statistics


Valid XHTML 1.0 Transitional     Valid CSS!

Partners: Cambridge Plus :: PYRENEES GOLF HOLIDAYS :: Prototype Assembly Service :: <Link Available>
Unix Man Pages / Linux Man Pages :: HiFi Forum :: SIP VoIP Phone & Provider Reviews :: UNIX/Linux Forum Archives

More info on advertising on Unix/Linux Forum