bonsix/docs/swab.1

68 lines
1.4 KiB
Groff

.\" Copyright (c) 2024 DTB <trinity@trinity.moe>
.\" Copyright (c) 2024 Emma Tebibyte <emma@tebibyte.media>
.\"
.\" This work is licensed under CC BY-SA 4.0. To see a copy of this license,
.\" visit <http://creativecommons.org/licenses/by-sa/4.0/>.
.\"
.TH SWAB 1
.SH NAME
swab \(en swap bytes
.\"
.SH SYNOPSIS
.\"
swab
.RB ( -f )
.RB ( -w
.R [
.B word size
.R ])
.\"
.SH USAGE
.\"
Swap the latter and former halves of a block of bytes.
.\"
.SH OPTIONS
.\"
.IP -f
Ignore system call interruptions.
.IP -w
Configures the word size; that is, the size in bytes of the block size
on which to operate. By default the word size is 2. The word size must be
cleanly divisible by 2, otherwise the block of bytes being processed can't be
halved.
.\"
.SH EXAMPLES
.\"
The following sh(1p) line:
.RS
.R printf 'hello world!\n' | swab
.RE
Produces the following output:
.RS
.R ehll oowlr!d
.RE
.\"
.SH DIAGNOSTICS
.\"
In the event of an error, a debug message will be printed and the program will
exit with the appropriate sysexits.h(3) error code.
.\"
.SH RATIONALE
.\"
This program was modeled and named after the conv=swab functionality specified
in the dd(1p) utility. It additionally allows the word size to be configured.
This functionality is useful for fixing the endianness of binary files produced
on other machines.
.\"
.SH COPYRIGHT
.\"
Copyright (c) 2024 DTB. License AGPLv3+: GNU AGPL version 3 or later
<https://gnu.org/licenses/agpl.html>.
.\"
.SH SEE ALSO
.BR dd (1p)