Base: Add a manpage for 'printf'
This commit is contained in:
parent
5b72d17ff6
commit
0341e3fde7
Notes:
sideshowbarker
2024-07-19 01:48:27 +09:00
Author: https://github.com/alimpfard Commit: https://github.com/SerenityOS/serenity/commit/0341e3fde73 Pull-request: https://github.com/SerenityOS/serenity/pull/3814 Reviewed-by: https://github.com/bugaevc
1 changed files with 53 additions and 0 deletions
53
Base/usr/share/man/man1/printf.md
Normal file
53
Base/usr/share/man/man1/printf.md
Normal file
|
@ -0,0 +1,53 @@
|
|||
## Name
|
||||
|
||||
printf - format and print data
|
||||
|
||||
## Synopsis
|
||||
|
||||
```**sh
|
||||
printf <format> [arguments...]
|
||||
```
|
||||
|
||||
## Description
|
||||
|
||||
`printf` formats _argument_(s) according to _format_ and prints the result to standard output.
|
||||
|
||||
_format_ is similar to the C printf format string, with the following differences:
|
||||
- The format specifier `b` (`%b`) is not supported.
|
||||
- The format specifiers that require a writable pointer (e.g. `n`) are not supported.
|
||||
- The format specifier `q` (`%q`) has a different behaviour, where it shall print a given string as a quoted string, which is safe to use in shell inputs.
|
||||
- Common escape sequences are interpreted, namely the following:
|
||||
|
||||
| escape | description |
|
||||
| :-: | :--- |
|
||||
| `\\\\`| literal backslash |
|
||||
| `\\"` | literal double quote |
|
||||
| `\\a` | alert (BEL) |
|
||||
| `\\b` | backspace |
|
||||
| `\\c` | Ends the format string |
|
||||
| `\\e` | escape (`\\x1b`) |
|
||||
| `\\f` | form feed |
|
||||
| `\\n` | newline |
|
||||
| `\\r` | carriage return |
|
||||
| `\\t` | tab |
|
||||
| `\\v` | vertical tab |
|
||||
|
||||
|
||||
The _format_ string is reapplied until all arguments are consumed, and a missing argument is treated as zero for numeric format specifiers, and an empty string for string format specifiers.
|
||||
|
||||
## Examples
|
||||
|
||||
```sh
|
||||
# print 64 as a hexadecimal number, with the starting '0x'
|
||||
$ printf '%#x' 64
|
||||
|
||||
# prints "a0\n", ignoring everything after '\c'
|
||||
$ printf '%s%d\n\caaaa' a
|
||||
|
||||
# prints "123400", as 'x' is an invalid number, and the missing argument for the last '%d' is treated as zero.
|
||||
$ printf '%d%d%d' 1 2 3 4 x
|
||||
```
|
||||
|
||||
## See also
|
||||
|
||||
* [`echo`(1)](../man1/echo.md)
|
Loading…
Add table
Reference in a new issue