aboutsummaryrefslogtreecommitdiff
path: root/coreutils-5.3.0-bin/man/cat1p/printf.1p.txt
diff options
context:
space:
mode:
Diffstat (limited to 'coreutils-5.3.0-bin/man/cat1p/printf.1p.txt')
-rw-r--r--coreutils-5.3.0-bin/man/cat1p/printf.1p.txt401
1 files changed, 401 insertions, 0 deletions
diff --git a/coreutils-5.3.0-bin/man/cat1p/printf.1p.txt b/coreutils-5.3.0-bin/man/cat1p/printf.1p.txt
new file mode 100644
index 0000000..b68a7cd
--- /dev/null
+++ b/coreutils-5.3.0-bin/man/cat1p/printf.1p.txt
@@ -0,0 +1,401 @@
+printf(P) printf(P)
+
+
+
+
+
+NAME
+ printf - write formatted output
+
+SYNOPSIS
+ printf format[argument...]
+
+DESCRIPTION
+ The printf utility shall write formatted operands to the
+ standard output. The argument operands shall be format-
+ ted under control of the format operand.
+
+OPTIONS
+ None.
+
+OPERANDS
+ The following operands shall be supported:
+
+ format A string describing the format to use to write
+ the remaining operands. See the EXTENDED
+ DESCRIPTION section.
+
+ argument
+ The strings to be written to standard output,
+ under the control of format. See the EXTENDED
+ DESCRIPTION section.
+
+
+STDIN
+ Not used.
+
+INPUT FILES
+ None.
+
+ENVIRONMENT VARIABLES
+ The following environment variables shall affect the
+ execution of printf:
+
+ LANG Provide a default value for the internationaliza-
+ tion variables that are unset or null. (See the
+ Base Definitions volume of IEEE Std 1003.1-2001,
+ Section 8.2, Internationalization Variables for
+ the precedence of internationalization variables
+ used to determine the values of locale cate-
+ gories.)
+
+ LC_ALL If set to a non-empty string value, override the
+ values of all the other internationalization
+ variables.
+
+ LC_CTYPE
+ Determine the locale for the interpretation of
+ sequences of bytes of text data as characters
+ (for example, single-byte as opposed to multi-
+ byte characters in arguments).
+
+ LC_MESSAGES
+ Determine the locale that should be used to
+ affect the format and contents of diagnostic mes-
+ sages written to standard error.
+
+ LC_NUMERIC
+
+ Determine the locale for numeric formatting. It
+ shall affect the format of numbers written using
+ the e , E , f , g , and G conversion specifier
+ characters (if supported).
+
+ NLSPATH
+ Determine the location of message catalogs for
+ the processing of LC_MESSAGES .
+
+
+ASYNCHRONOUS EVENTS
+ Default.
+
+STDOUT
+ See the EXTENDED DESCRIPTION section.
+
+STDERR
+ The standard error shall be used only for diagnostic
+ messages.
+
+OUTPUT FILES
+ None.
+
+EXTENDED DESCRIPTION
+ The format operand shall be used as the format string
+ described in the Base Definitions volume of
+ IEEE Std 1003.1-2001, Chapter 5, File Format Notation
+ with the following exceptions:
+
+ A <space> in the format string, in any context other
+ than a flag of a conversion specification, shall be
+ treated as an ordinary character that is copied to the
+ output.
+
+ A '' character in the format string shall be treated as
+ a '' character, not as a <space>.
+
+ In addition to the escape sequences shown in the Base
+ Definitions volume of IEEE Std 1003.1-2001, Chapter 5,
+ File Format Notation ( '\\' , '\a' , '\b' , '\f' , '\n'
+ , '\r' , '\t' , '\v' ), "\ddd" , where ddd is a one,
+ two, or three-digit octal number, shall be written as a
+ byte with the numeric value specified by the octal num-
+ ber.
+
+ The implementation shall not precede or follow output
+ from the d or u conversion specifiers with <blank>s not
+ specified by the format operand.
+
+ The implementation shall not precede output from the o
+ conversion specifier with zeros not specified by the
+ format operand.
+
+ The e , E , f , g , and G conversion specifiers need not
+ be supported.
+
+ An additional conversion specifier character, b , shall
+ be supported as follows. The argument shall be taken to
+ be a string that may contain backslash-escape sequences.
+ The following backslash-escape sequences shall be sup-
+ ported:
+
+ The escape sequences listed in the Base Defini-
+ tions volume of IEEE Std 1003.1-2001, Chapter 5,
+ File Format Notation ( '\\' , '\a' , '\b' , '\f'
+ , '\n' , '\r' , '\t' , '\v' ), which shall be
+ converted to the characters they represent
+
+ "\0ddd" , where ddd is a zero, one, two, or
+ three-digit octal number that shall be converted
+ to a byte with the numeric value specified by the
+ octal number
+
+ '\c' , which shall not be written and shall cause
+ 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 shall be written until
+ the end of the string or the number of bytes indicated
+ by the precision specification is reached. If the preci-
+ sion is omitted, it shall be taken to be infinite, so
+ all bytes up to the end of the converted string shall be
+ written.
+
+ For each conversion specification that consumes an argu-
+ ment, the next argument operand shall be evaluated and
+ converted to the appropriate type for the conversion as
+ specified below.
+
+ The format operand shall be reused as often as necessary
+ to satisfy the argument operands. Any extra c or s con-
+ version specifiers shall be evaluated as if a null
+ string argument were supplied; other extra conversion
+ specifications shall be evaluated as if a zero argument
+ were supplied. If the format operand contains no con-
+ version 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 conver-
+ sion specification, the behavior is unspecified.
+
+ The argument operands shall be treated as strings if the
+ corresponding conversion specifier is b , c , or s ;
+ otherwise, it shall be evaluated as a C constant, as
+ described by the ISO C standard, with the following
+ extensions:
+
+ A leading plus or minus sign shall be allowed.
+
+ If the leading character is a single-quote or
+ double-quote, the value shall be the numeric
+ value in the underlying codeset of the character
+ following the single-quote or double-quote.
+
+ If an argument operand cannot be completely converted
+ into an internal value appropriate to the corresponding
+ conversion specification, a diagnostic message shall be
+ written to standard error and the utility shall not exit
+ with a zero exit status, but shall continue processing
+ any remaining operands and shall write the value accumu-
+ lated at the time the error was detected to standard
+ output.
+
+ 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.
+
+EXIT STATUS
+ The following exit values shall be returned:
+
+ 0 Successful completion.
+
+ >0 An error occurred.
+
+
+CONSEQUENCES OF ERRORS
+ Default.
+
+ The following sections are informative.
+
+APPLICATION USAGE
+ The floating-point formatting conversion specifications
+ of printf() are not required because all arithmetic in
+ the shell is integer arithmetic. The awk utility per-
+ forms floating-point calculations and provides its own
+ printf function. The bc utility can perform arbitrary-
+ precision floating-point arithmetic, but does not pro-
+ vide extensive formatting capabilities. (This printf
+ utility cannot really be used to format bc output; it
+ does not support arbitrary precision.) Implementations
+ are encouraged to support the floating-point conversions
+ as an extension.
+
+ Note that this printf utility, like the printf() func-
+ tion defined in the System Interfaces volume of
+ IEEE Std 1003.1-2001 on which it is based, makes no spe-
+ cial provision for dealing with multi-byte characters
+ when using the %c conversion specification or when a
+ precision is specified in a %b or %s conversion specifi-
+ cation. Applications should be extremely cautious using
+ either of these features when there are multi-byte char-
+ acters in the character set.
+
+ No provision is made in this volume of
+ IEEE Std 1003.1-2001 which allows field widths and pre-
+ cisions to be specified as '*' since the '*' can be
+ replaced directly in the format operand using shell
+ variable substitution. Implementations can also provide
+ this feature as an extension if they so choose.
+
+ Hexadecimal character constants as defined in the ISO C
+ standard are not recognized in the format operand
+ because there is no consistent way to detect the end of
+ the constant. Octal character constants are limited to,
+ at most, three octal digits, but hexadecimal character
+ constants are only terminated by a non-hex-digit charac-
+ ter. In the ISO C standard, the "##" concatenation oper-
+ ator can be used to terminate a constant and follow it
+ with a hexadecimal character to be written. In the
+ shell, concatenation occurs before the printf utility
+ has a chance to parse the end of the hexadecimal con-
+ stant.
+
+ The %b conversion specification is not part of the ISO C
+ standard; it has been added here as a portable way to
+ process backslash escapes expanded in string operands as
+ provided by the echo utility. See also the APPLICATION
+ USAGE section of echo for ways to use printf as a
+ replacement for all of the traditional versions of the
+ echo utility.
+
+ If an argument cannot be parsed correctly for the corre-
+ sponding conversion specification, the printf utility is
+ required to report an error. Thus, overflow and extrane-
+ ous characters at the end of an argument being used for
+ a numeric conversion shall be reported as errors.
+
+EXAMPLES
+ To alert the user and then print and read a series of
+ prompts:
+
+
+ printf "\aPlease fill in the following: \nName: "
+ read name
+ printf "Phone number: "
+ read phone
+
+ 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>. The percentage is written to one decimal
+ place of accuracy:
+
+
+ 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
+ The command:
+
+
+ printf "%5d%4d\n" 1 21 321 4321 54321
+
+ produces:
+
+
+ 1 21
+ 3214321
+ 54321 0
+
+ Note that the format operand is used three times to
+ print all of the given strings and that a '0' was sup-
+ plied by printf to satisfy the last %4d conversion spec-
+ ification.
+
+ The printf utility is required to notify 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:
+ Standard
+Argument Output Diagnostic Output
+5a 5 printf: "5a" not completely converted
+9999999999 2147483647 printf: "9999999999" arithmetic overflow
+-9999999999 -2147483648 printf: "-9999999999" arithmetic overflow
+ABC 0 printf: "ABC" expected numeric value
+
+ The diagnostic message format is not specified, but
+ these examples convey the type of information that
+ should be reported. Note that the value shown on stan-
+ dard output is what would be expected as the return
+ value from the strtol() function as defined in the Sys-
+ tem Interfaces volume of IEEE Std 1003.1-2001. A similar
+ correspondence exists between %u and strtoul() and %e ,
+ %f , and %g (if the implementation supports floating-
+ point conversions) and strtod().
+
+ In a locale using the ISO/IEC 646:1991 standard as the
+ underlying codeset, the command:
+
+
+ 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
+ ISO/IEC 646:1991 standard codeset
+
+
+ Note 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 charac-
+ ter as described in the System Interfaces volume of
+ IEEE Std 1003.1-2001.
+
+RATIONALE
+ The printf utility was added to provide functionality
+ that has historically been provided by echo. However,
+ due to irreconcilable differences in the various ver-
+ sions of echo extant, the version has few special fea-
+ tures, leaving those to this new printf utility, which
+ is based on one in the Ninth Edition system.
+
+ The EXTENDED DESCRIPTION section almost exactly matches
+ the printf() function in the ISO C standard, although it
+ is described in terms of the file format notation in the
+ Base Definitions volume of IEEE Std 1003.1-2001, Chapter
+ 5, File Format Notation.
+
+FUTURE DIRECTIONS
+ None.
+
+SEE ALSO
+ awk , bc , echo , the System Interfaces volume of
+ IEEE Std 1003.1-2001, printf()
+
+COPYRIGHT
+ Portions of this text are reprinted and reproduced in
+ electronic form from IEEE Std 1003.1, 2003 Edition,
+ Standard for Information Technology -- Portable Operat-
+ ing System Interface (POSIX), The Open Group Base Speci-
+ fications Issue 6, Copyright (C) 2001-2003 by the Insti-
+ tute of Electrical and Electronics Engineers, Inc and
+ The Open Group. In the event of any discrepancy between
+ this version and the original IEEE and The Open Group
+ Standard, the original IEEE and The Open Group Standard
+ is the referee document. The original Standard can be
+ obtained online at http://www.open-
+ group.org/unix/online.html .
+
+
+
+POSIX 2003 printf(P)