Printf (Unix)

Uses your system voice; voice and rate in settings.

Snapshot

≈ 4 min read

Names in other languages

No names in other languages are held for this entry yet.

Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.

printf is a shell command that formats and outputs text like the same-named C function. It is available in a variety of Unix and Unix-like systems. Some shells implement the command as builtin and some provide it as a utility program The command has similar syntax and semantics as the library function. The command outputs text to standard output as specified by a format string and a list of values. Characters of the format string are copied to the output verbatim except when a format specifier is found which causes a value to be output per the specifier. The command has some aspects unlike the library function. In addition to the library function format specifiers, %b causes the command to expand backslash escape sequences (for example \n for newline), and %q outputs an item that can be used as shell input. The value used for an unmatched specifier (too few values) is an empty string for or 0 for a numeric specifier. If there are more values than specifiers, then the command restarts processing the format string from its beginning, The command is part of the X/Open Portability Guide since issue 4 of 1992. It was inherited into the first version of POSIX.1 and the Single Unix Specification. It first appeared in 4.3BSD-Reno. The implementation bundled in GNU Core Utilities was written by David MacKenzie. It has an extension for escaping strings in POSIX-shell format.

printf is a shell command that formats and outputs text like the same-named C function. It is available in a variety of Unix and Unix-like systems. Some shells implement the command as builtin and some provide it as a utility program The command has similar syntax and semantics as the library function. The command outputs text to standard output as specified by a format string and a list of values. Characters of the format string are copied to the output verbatim except when a format specifier is found which causes a value to be output per the specifier. The command has some aspects unlike the library function. In addition to the library function format specifiers, %b causes the command to expand backslash escape sequences (for example \n for newline), and %q outputs an item that can be used as shell input. The value used for an unmatched specifier (too few values) is an empty string for or 0 for a numeric specifier. If there are more values than specifiers, then the command restarts processing the format string from its beginning, The command is part of the X/Open Portability Guide since issue 4 of 1992. It was inherited into the first version of POSIX.1 and the Single Unix Specification. It first appeared in 4.3BSD-Reno. The implementation bundled in GNU Core Utilities was written by David MacKenzie. It has an extension for escaping strings in POSIX-shell format.

Examples

This prints a list of numbers: $ for N in 4 8 10; do printf " >> %03d > 004 > 008 > 010 This produces output for a directory's content similar to ls : $ printf "%s\n" *

References

External links

Text derived from https://en.wikipedia.org/w/index.php?oldid=1353507402 under CC BY-SA 4.0; modifications have been made.

Sources cited in this revision

Extracted from the cited revision's reference blocks; absent citations are not invented.