NAME¶
qprint - encode / decode file as RFC 1521 MIME Quoted-Printable
SYNOPSIS¶
qprint -d|
-e [
options ] [
infile [
outfile ] ]
DESCRIPTION¶
The MIME (Multipurpose Internet Mail Extensions) specification RFC 1521 and
successors) defines a mechanism for encoding text consisting primarily of
printable ASCII characters, but which may contain characters (for example,
accented letters in the ISO 8859 Latin-1 character set) which cannot be
encoded as 7-bit ASCII or are non-printable characters which may confuse mail
transfer agents.
qprint is a command line utility which encodes and decodes files in this
format. It can be used within a pipeline as an encoding or decoding filter,
and is most commonly used in this manner as part of an automated mail
processing system. With appropriate options,
qprint can encode pure
binary files, but it's a poor choice since it may inflate the size of the file
by as much as a factor of three. The Base64 MIME encoding is a better choice
for such data.
OPTIONS¶
- -b, --binary
- Treat the input (when encoding) or output (when decoding) file as pure
binary, and process end of line sequences as binary data. Encoding and
decoding a file with this option preserves the exact sequence of bytes in
the input, but does not perform the translation of end of line sequences
normally performed by Quoted-Printable encoding.
- --copyright
- Print program copyright information.
- -d, --decode
- Decodes the input, previously created by qprint, to recover the
original input file.
- -e, --encode
- Encodes the input into an output text file containing its qprint
encoding.
- -i, --ebcdic
- Encode ASCII characters for which no equivalent exists in the EBCDIC
character set. This renders files more portable when transported to EBCDIC
systems.
- -n, --noerrcheck
- Suppress error checking when decoding. By default, upon encountering a non
white space character which does not belong to the qprint set, or
discovering the input file is incorrectly padded to a multiple of four
characters, qprint issues an error message and terminates
processing with exit status 1. The -n option suppresses even this
rudimentary error checking; invalid characters are silently ignored and
the output truncated to the last three valid octets if the input is
incorrectly padded.
- -p ,--paranoid
- Every character in the input file will be encoded as an escape sequence.
You must also specify the -b or --binary option if you wish
end of line sequences to be escaped as well. This option is a last resort
when there's no other way to transmit the file, but an encoding explicitly
designed for binary data such as Base64 is a much more economical
choice.
- -u, --help
- Print how-to-call information.
- --version
- Print program version information.
EXIT STATUS¶
qprint returns status 0 if processing was completed without errors, 1 if
an I/O error occurred or errors were detected in decoding a file which
indicate it is incorrect or incomplete, and 2 if processing could not be
performed at all due, for example, to a nonexistent input file.
FILES¶
If no
infile is specified or
infile is a single ``-'',
qprint reads from standard input; if no
outfile is given, or
outfile is a single ``-'', output is sent to standard output. The input
and output are processed strictly serially; consequently
qprint may be
used in pipelines. The program can process files of any size supported by the
system containing text lines of arbitrary length.
BUGS¶
Encoding a file with a large percentage of non-ASCII characters may dramatically
increase its size. This is inherent in the design of Quoted-Printable
encoding.
Please report bugs and documentation errors to
bugs@fourmilab.ch.
SEE ALSO¶
base64(1),
uuencode(1), RFC1521
AUTHOR¶
This software is in the public domain. Permission to use, copy, modify, and
distribute this software and its documentation for any purpose and without fee
is hereby granted, without any conditions or restrictions. This software is
provided ``as is'' without express or implied warranty.
This is version 1.0 of
qprint. The current version of this program may be
downloaded from
http://www.fourmilab.ch/webtools/qprint.