isposix

Un outil pour savoir si une commande est posix - retour accueil

git clone git://bebou.netlib.re/isposix
Log | Files | Refs | README |

pr.html (24772B)


      1 <!-- Copyright 2001-2024 IEEE and The Open Group, All Rights Reserved -->
      2 <!DOCTYPE HTML>
      3 <html lang="en">
      4 <head>
      5 <meta name="generator" content="HTML Tidy for HTML5 for Linux version 5.8.0">
      6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      7 <link type="text/css" rel="stylesheet" href="style.css"><!-- Generated by The Open Group rhtm tool v1.2.4 -->
      8 <!-- Copyright (c) 2001-2024 The Open Group, All Rights Reserved -->
      9 <title>pr</title>
     10 </head>
     11 <body bgcolor="white">
     12 <div class="NAVHEADER">
     13 <table summary="Header navigation table" class="nav" width="100%" border="0" cellpadding="0" cellspacing="0">
     14 <tr class="nav">
     15 <td class="nav" width="15%" align="left" valign="bottom"><a href="../utilities/pax.html" accesskey="P">&lt;&lt;&lt;
     16 Previous</a></td>
     17 <td class="nav" width="70%" align="center" valign="bottom"><a href="contents.html">Home</a></td>
     18 <td class="nav" width="15%" align="right" valign="bottom"><a href="../utilities/printf.html" accesskey="N">Next
     19 &gt;&gt;&gt;</a></td>
     20 </tr>
     21 </table>
     22 <hr align="left" width="100%"></div>
     23 <script language="JavaScript" src="../jscript/codes.js"></script><basefont size="3">
     24 <center><font size="2">The Open Group Base Specifications Issue 8<br>
     25 IEEE Std 1003.1-2024<br>
     26 Copyright © 2001-2024 The IEEE and The Open Group</font></center>
     27 <hr size="2" noshade>
     28 <a name="top" id="top"></a> <a name="pr" id="pr"></a> <a name="tag_20_95" id="tag_20_95"></a><!-- pr -->
     29 <h4 class="mansect"><a name="tag_20_95_01" id="tag_20_95_01"></a>NAME</h4>
     30 <blockquote>pr — print files</blockquote>
     31 <h4 class="mansect"><a name="tag_20_95_02" id="tag_20_95_02"></a>SYNOPSIS</h4>
     32 <blockquote class="synopsis">
     33 <p><code><tt><sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup> pr</tt> <b>[</b><tt>+</tt><i>page</i><b>]
     34 [</b><tt>-</tt><i>column</i><b>] [</b><tt>-ad<img src="../images/opt-start.gif" border="0">f<img src="../images/opt-end.gif"
     35 border="0">Fmprt</tt><b>] [</b><tt>-e</tt><b>[</b><i>char</i><b>][</b><i>gap</i><b>]] [</b><tt>-h</tt> <i>header</i><b>]<br></b>
     36 <tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt> <b>[</b><tt>-i</tt><b>[</b><i>char</i><b>][</b><i>gap</i><b>]] [</b><tt>-l</tt>
     37 <i>lines</i><b>] [</b><tt>-n</tt><b>[</b><i>char</i><b>][</b><i>width</i><b>]] [</b><tt>-o</tt> <i>offset</i><b>]
     38 [</b><tt>-s</tt><b>[</b><i>char</i><b>]]<br></b> <tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt> <b>[</b><tt>-w</tt> <i>width</i><b>]
     39 [</b><i>file</i><tt>...</tt><b>]</b></code></p>
     40 </blockquote>
     41 <h4 class="mansect"><a name="tag_20_95_03" id="tag_20_95_03"></a>DESCRIPTION</h4>
     42 <blockquote>
     43 <p>The <i>pr</i> utility is a printing and pagination filter. If multiple input files are specified, each shall be read, formatted,
     44 and written to standard output. By default, the input shall be separated into 66-line pages, each with:</p>
     45 <ul>
     46 <li>
     47 <p>A 5-line header that includes the page number, date, time, and the pathname of the file</p>
     48 </li>
     49 <li>
     50 <p>A 5-line trailer consisting of blank lines</p>
     51 </li>
     52 </ul>
     53 <p>If standard output is associated with a terminal, diagnostic messages shall be deferred until the <i>pr</i> utility has
     54 completed processing.</p>
     55 <p>When options specifying multi-column output are specified, output text columns shall be of equal width; input lines that do not
     56 fit into a text column shall be truncated. By default, text columns shall be separated with at least one &lt;blank&gt;.</p>
     57 </blockquote>
     58 <h4 class="mansect"><a name="tag_20_95_04" id="tag_20_95_04"></a>OPTIONS</h4>
     59 <blockquote>
     60 <p>The <i>pr</i> utility shall conform to XBD <a href="../basedefs/V1_chap12.html#tag_12_02"><i>12.2 Utility Syntax
     61 Guidelines</i></a> , except that: the <i>page</i> option has a <tt>'+'</tt> delimiter; <i>page</i> and <i>column</i> can be
     62 multi-digit numbers; some of the option-arguments are optional; and some of the option-arguments cannot be specified as separate
     63 arguments from the preceding option letter. In particular, the <b>-s</b> option does not allow the option letter to be separated
     64 from its argument, and the options <b>-e</b>, <b>-i</b>, and <b>-n</b> require that both arguments, if present, not be separated
     65 from the option letter.</p>
     66 <p>The following options shall be supported. In the following option descriptions, <i>column</i>, <i>lines</i>, <i>offset</i>,
     67 <i>page</i>, and <i>width</i> are positive decimal integers; <i>gap</i> is a non-negative decimal integer.</p>
     68 <dl compact>
     69 <dd></dd>
     70 <dt><b>+</b><i>page</i></dt>
     71 <dd>Begin output at page number <i>page</i> of the formatted input.</dd>
     72 <dt><b>-</b><i>column</i></dt>
     73 <dd>Produce multi-column output that is arranged in <i>column</i> columns (the default shall be 1) and is written down each column
     74 in the order in which the text is received from the input file. This option should not be used with <b>-m</b>. The options
     75 <b>-e</b> and <b>-i</b> shall be assumed for multiple text-column output. Whether or not text columns are produced with identical
     76 vertical lengths is unspecified, but a text column shall never exceed the length of the page (see the <b>-l</b> option). When used
     77 with <b>-t</b>, use the minimum number of lines to write the output.</dd>
     78 <dt><b>-a</b></dt>
     79 <dd>Modify the effect of the <b>-</b><i>column</i> option so that the columns are filled across the page in a round-robin order
     80 (for example, when <i>column</i> is 2, the first input line heads column 1, the second heads column 2, the third is the second line
     81 in column 1, and so on).</dd>
     82 <dt><b>-d</b></dt>
     83 <dd>Produce output that is double-spaced; append an extra &lt;newline&gt; following every &lt;newline&gt; found in the input.</dd>
     84 <dt><b>-e[</b><i>char</i><b>][</b><i>gap</i><b>]</b></dt>
     85 <dd><br>
     86 Expand each input &lt;tab&gt; to the next greater column position specified by the formula <i>n</i>*<i>gap</i>+1, where <i>n</i> is
     87 an integer &gt; 0. If <i>gap</i> is zero or is omitted, it shall default to 8. All &lt;tab&gt; characters in the input shall be
     88 expanded into the appropriate number of &lt;space&gt; characters. If any non-digit character, <i>char</i>, is specified, it shall
     89 be used as the input &lt;tab&gt;. If the first character of the <b>-e</b> option-argument is a digit, the entire option-argument
     90 shall be assumed to be <i>gap</i>.</dd>
     91 <dt><b>-f</b></dt>
     92 <dd><sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup> <img src="../images/opt-start.gif" alt="[Option Start]" border="0">
     93 Use a &lt;form-feed&gt; for new pages, instead of the default behavior that uses a sequence of &lt;newline&gt; characters. Pause
     94 before beginning the first page if the standard output is associated with a terminal. <img src="../images/opt-end.gif" alt=
     95 "[Option End]" border="0"></dd>
     96 <dt><b>-F</b></dt>
     97 <dd>Use a &lt;form-feed&gt; for new pages, instead of the default behavior that uses a sequence of &lt;newline&gt; characters.</dd>
     98 <dt><b>-h&nbsp;</b><i>header</i></dt>
     99 <dd>Use the string <i>header</i> to replace the contents of the <i>file</i> operand in the page header.</dd>
    100 <dt><b>-i[</b><i>char</i><b>][</b><i>gap</i><b>]</b></dt>
    101 <dd>In output, replace &lt;space&gt; characters with &lt;tab&gt; characters wherever one or more adjacent &lt;space&gt; characters
    102 reach column positions <i>gap</i>+1, 2* <i>gap</i>+1, 3* <i>gap</i>+1, and so on. If <i>gap</i> is zero or is omitted, default tab
    103 settings at every eighth column position shall be assumed. If any non-digit character, <i>char</i>, is specified, it shall be used
    104 as the output &lt;tab&gt;. If the first character of the <b>-i</b> option-argument is a digit, the entire option-argument shall be
    105 assumed to be <i>gap</i>.</dd>
    106 <dt><b>-l&nbsp;</b><i>lines</i></dt>
    107 <dd>Override the 66-line default and reset the page length to <i>lines</i>. If <i>lines</i> is not greater than the sum of both the
    108 header and trailer depths (in lines), the <i>pr</i> utility shall suppress both the header and trailer, as if the <b>-t</b> option
    109 were in effect.</dd>
    110 <dt><b>-m</b></dt>
    111 <dd>Merge files. Standard output shall be formatted so the <i>pr</i> utility writes one line from each file specified by a
    112 <i>file</i> operand, side by side into text columns of equal fixed widths, in terms of the number of column positions.
    113 Implementations shall support merging of at least nine <i>file</i> operands.</dd>
    114 <dt><b>-n[</b><i>char</i><b>][</b><i>width</i><b>]</b></dt>
    115 <dd><br>
    116 Provide <i>width</i>-digit line numbering (default for <i>width</i> shall be 5). The number shall occupy the first <i>width</i>
    117 column positions of each text column of default output or each line of <b>-m</b> output. If <i>char</i> (any non-digit character)
    118 is given, it shall be appended to the line number to separate it from whatever follows (default for <i>char</i> is a
    119 &lt;tab&gt;).</dd>
    120 <dt><b>-o&nbsp;</b><i>offset</i></dt>
    121 <dd>Each line of output shall be preceded by offset &lt;space&gt; characters. If the <b>-o</b> option is not specified, the default
    122 offset shall be zero. The space taken is in addition to the output line width (see the <b>-w</b> option below).</dd>
    123 <dt><b>-p</b></dt>
    124 <dd>Pause before beginning each page if the standard output is directed to a terminal; <i>pr</i> shall write an &lt;alert&gt; to
    125 standard error and wait for a &lt;newline&gt; to be read on <b>/dev/tty</b>.</dd>
    126 <dt><b>-r</b></dt>
    127 <dd>Write no diagnostic reports on failure to open files.</dd>
    128 <dt><b>-s[</b><i>char</i><b>]</b></dt>
    129 <dd>Separate text columns by the single character <i>char</i> instead of by the appropriate number of &lt;space&gt; characters
    130 (default for <i>char</i> shall be &lt;tab&gt;).</dd>
    131 <dt><b>-t</b></dt>
    132 <dd>Write neither the five-line identifying header nor the five-line trailer usually supplied for each page. Quit writing after the
    133 last line of each file without spacing to the end of the page.</dd>
    134 <dt><b>-w&nbsp;</b><i>width</i></dt>
    135 <dd>Set the width of the line to <i>width</i> column positions for multiple text-column output only. If the <b>-w</b> option is not
    136 specified and the <b>-s</b> option is not specified, the default width shall be 72. If the <b>-w</b> option is not specified and
    137 the <b>-s</b> option is specified, the default width shall be 512.
    138 <p>For single column output, input lines shall not be truncated.</p>
    139 </dd>
    140 </dl>
    141 </blockquote>
    142 <h4 class="mansect"><a name="tag_20_95_05" id="tag_20_95_05"></a>OPERANDS</h4>
    143 <blockquote>
    144 <p>The following operand shall be supported:</p>
    145 <dl compact>
    146 <dd></dd>
    147 <dt><i>file</i></dt>
    148 <dd>A pathname of a file to be written. If no <i>file</i> operands are specified, or if a <i>file</i> operand is <tt>'-'</tt>, the
    149 standard input shall be used.</dd>
    150 </dl>
    151 </blockquote>
    152 <h4 class="mansect"><a name="tag_20_95_06" id="tag_20_95_06"></a>STDIN</h4>
    153 <blockquote>
    154 <p>The standard input shall be used only if no <i>file</i> operands are specified, or if a <i>file</i> operand is <tt>'-'</tt>. See
    155 the INPUT FILES section.</p>
    156 </blockquote>
    157 <h4 class="mansect"><a name="tag_20_95_07" id="tag_20_95_07"></a>INPUT FILES</h4>
    158 <blockquote>
    159 <p>The input files shall be text files. If the <b>-m</b> option is not specified, an empty input file may, but should not, be
    160 treated as an error.</p>
    161 <p>The file <b>/dev/tty</b> shall be used to read responses required by the <b>-p</b> option.</p>
    162 </blockquote>
    163 <h4 class="mansect"><a name="tag_20_95_08" id="tag_20_95_08"></a>ENVIRONMENT VARIABLES</h4>
    164 <blockquote>
    165 <p>The following environment variables shall affect the execution of <i>pr</i>:</p>
    166 <dl compact>
    167 <dd></dd>
    168 <dt><i>LANG</i></dt>
    169 <dd>Provide a default value for the internationalization variables that are unset or null. (See XBD <a href=
    170 "../basedefs/V1_chap08.html#tag_08_02"><i>8.2 Internationalization Variables</i></a> the precedence of internationalization
    171 variables used to determine the values of locale categories.)</dd>
    172 <dt><i>LC_ALL</i></dt>
    173 <dd>If set to a non-empty string value, override the values of all the other internationalization variables.</dd>
    174 <dt><i>LC_CTYPE</i></dt>
    175 <dd>Determine the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as
    176 opposed to multi-byte characters in arguments and input files) and which characters are defined as printable (character class
    177 <b>print</b>). Non-printable characters are still written to standard output, but are not counted for the purpose for column-width
    178 and line-length calculations.</dd>
    179 <dt><i>LC_MESSAGES</i></dt>
    180 <dd><br>
    181 Determine the locale that should be used to affect the format and contents of diagnostic messages written to standard error.</dd>
    182 <dt><i>LC_TIME</i></dt>
    183 <dd>Determine the format of the date and time for use in writing header lines.</dd>
    184 <dt><i>NLSPATH</i></dt>
    185 <dd><sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup> <img src="../images/opt-start.gif" alt="[Option Start]" border="0">
    186 Determine the location of messages objects and message catalogs. <img src="../images/opt-end.gif" alt="[Option End]" border=
    187 "0"></dd>
    188 <dt><i>TZ</i></dt>
    189 <dd>Determine the timezone used to calculate date and time strings written in header lines. If <i>TZ</i> is unset or null, an
    190 unspecified default timezone shall be used.</dd>
    191 </dl>
    192 </blockquote>
    193 <h4 class="mansect"><a name="tag_20_95_09" id="tag_20_95_09"></a>ASYNCHRONOUS EVENTS</h4>
    194 <blockquote>
    195 <p>If <i>pr</i> receives an interrupt while writing to a terminal, it shall flush all accumulated error messages to the screen
    196 before terminating.</p>
    197 </blockquote>
    198 <h4 class="mansect"><a name="tag_20_95_10" id="tag_20_95_10"></a>STDOUT</h4>
    199 <blockquote>
    200 <p>If the <b>-m</b> option is not specified, the <i>pr</i> utility output shall be as follows:</p>
    201 <ul>
    202 <li>
    203 <p>If an input file is empty and the implementation does not treat this as an error, no output shall be written for that file and
    204 this shall be considered to be successful completion of the processing for that file.</p>
    205 </li>
    206 <li>
    207 <p>For each non-empty input file, the output shall be a paginated version of the original file.</p>
    208 </li>
    209 </ul>
    210 <p>If the <b>-m</b> option is specified, the <i>pr</i> utility output shall be a paginated version of the merged file contents, as
    211 described in OPTIONS.</p>
    212 <p>In both cases, the pagination shall be accomplished using either &lt;form-feed&gt; characters or a sequence of &lt;newline&gt;
    213 characters, as controlled by the <b>-F</b> <sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup> <img src=
    214 "../images/opt-start.gif" alt="[Option Start]" border="0"> &nbsp;or <b>-f</b> <img src="../images/opt-end.gif" alt="[Option End]"
    215 border="0"> option. Page headers shall be generated unless the <b>-t</b> option is specified, the <b>-l</b> option is specified
    216 with too small a value (see OPTIONS), or the <b>-m</b> option is specified and all of the input files are empty. The page headers
    217 shall be of the form:</p>
    218 <pre>
    219 <tt>"\n\n%s %s Page %d\n\n\n", &lt;</tt><i>output of date</i><tt>&gt;, &lt;</tt><i>file</i><tt>&gt;, &lt;</tt><i>page number</i><tt>&gt;
    220 </tt></pre>
    221 <p>In the POSIX locale, the &lt;<i>output&nbsp;of&nbsp;date</i>&gt; field shall be equivalent to the output of the following
    222 command:</p>
    223 <pre>
    224 <tt>date "+%b %e %H:%M %Y"
    225 </tt></pre>
    226 <p>without the trailing &lt;newline&gt;, as it would appear if executed at the current time if the <b>-m</b> option is specified,
    227 or at the following time otherwise:</p>
    228 <ul>
    229 <li>
    230 <p>The current time on pages being written from standard input.</p>
    231 </li>
    232 <li>
    233 <p>The modification time of the file named by the corresponding <i>file</i> operand on pages not being written from standard
    234 input.</p>
    235 </li>
    236 </ul>
    237 <p>When the <i>LC_TIME</i> locale category is not set to the POSIX locale, a different format and order of presentation of this
    238 field may be used.</p>
    239 <p>If the <b>-h</b> option is specified, the &lt;<i>file</i>&gt; field shall be replaced by the <i>header</i> argument.
    240 Otherwise:</p>
    241 <ul>
    242 <li>
    243 <p>If the <b>-m</b> option is specified, the &lt;<i>file</i>&gt; field shall be replaced by a null string on all pages.</p>
    244 </li>
    245 <li>
    246 <p>If the <b>-m</b> option is not specified, the &lt;<i>file</i>&gt; field shall be replaced by a null string on pages containing
    247 output that was read from standard input.</p>
    248 </li>
    249 </ul>
    250 </blockquote>
    251 <h4 class="mansect"><a name="tag_20_95_11" id="tag_20_95_11"></a>STDERR</h4>
    252 <blockquote>
    253 <p>The standard error shall be used for diagnostic messages and for alerting the terminal when <b>-p</b> is specified.</p>
    254 </blockquote>
    255 <h4 class="mansect"><a name="tag_20_95_12" id="tag_20_95_12"></a>OUTPUT FILES</h4>
    256 <blockquote>
    257 <p>None.</p>
    258 </blockquote>
    259 <h4 class="mansect"><a name="tag_20_95_13" id="tag_20_95_13"></a>EXTENDED DESCRIPTION</h4>
    260 <blockquote>
    261 <p>None.</p>
    262 </blockquote>
    263 <h4 class="mansect"><a name="tag_20_95_14" id="tag_20_95_14"></a>EXIT STATUS</h4>
    264 <blockquote>
    265 <p>The following exit values shall be returned:</p>
    266 <dl compact>
    267 <dd></dd>
    268 <dt>&nbsp;0</dt>
    269 <dd>Successful completion.</dd>
    270 <dt>&gt;0</dt>
    271 <dd>An error occurred.</dd>
    272 </dl>
    273 </blockquote>
    274 <h4 class="mansect"><a name="tag_20_95_15" id="tag_20_95_15"></a>CONSEQUENCES OF ERRORS</h4>
    275 <blockquote>
    276 <p>Default.</p>
    277 </blockquote>
    278 <hr>
    279 <div class="box"><em>The following sections are informative.</em></div>
    280 <h4 class="mansect"><a name="tag_20_95_16" id="tag_20_95_16"></a>APPLICATION USAGE</h4>
    281 <blockquote>
    282 <p>A conforming application must protect its first operand, if it starts with a &lt;plus-sign&gt;, by preceding it with the
    283 <tt>"--"</tt> argument that denotes the end of the options. For example, <i>pr</i>+<i>x</i> could be interpreted as an invalid page
    284 number or a <i>file</i> operand.</p>
    285 <p>If a <i>file</i> operand contains &lt;newline&gt;, &lt;form-feed&gt;, or &lt;vertical-tab&gt; characters, or is overly long, and
    286 the <i>pr</i> utility is instructed to include the pathname of that file in the header, pagination may not be handled correctly.
    287 Applications can guard against this by using the <b>-h</b> option (for example, passing a sanitized, truncated form of the pathname
    288 with <b>-h</b>).</p>
    289 </blockquote>
    290 <h4 class="mansect"><a name="tag_20_95_17" id="tag_20_95_17"></a>EXAMPLES</h4>
    291 <blockquote>
    292 <ol>
    293 <li>
    294 <p>Print a numbered list of all files in the current directory:</p>
    295 <pre>
    296 <tt>ls -a | pr -n -h "Files in $(pwd)."
    297 </tt></pre></li>
    298 <li>
    299 <p>Print <b>file1</b> and <b>file2</b> as a double-spaced, three-column listing headed by &quot;file list&quot;:</p>
    300 <pre>
    301 <tt>pr -3d -h "file list" file1 file2
    302 </tt></pre></li>
    303 <li>
    304 <p>Write <b>file1</b> on <b>file2</b>, expanding tabs to columns 10, 19, 28, ...:</p>
    305 <pre>
    306 <tt>pr -e9 -t &lt;file1 &gt;file2
    307 </tt></pre></li>
    308 </ol>
    309 </blockquote>
    310 <h4 class="mansect"><a name="tag_20_95_18" id="tag_20_95_18"></a>RATIONALE</h4>
    311 <blockquote>
    312 <p>This utility is one of those that does not follow the Utility Syntax Guidelines because of its historical origins. The standard
    313 developers could have added new options that obeyed the guidelines (and marked the old options obsolescent) or devised an entirely
    314 new utility; there are examples of both actions in this volume of POSIX.1-2024. Because of its widespread use by historical
    315 applications, the standard developers decided to exempt this version of <i>pr</i> from many of the guidelines.</p>
    316 <p>Implementations are required to accept option-arguments to the <b>-h</b>, <b>-l</b>, <b>-o</b>, and <b>-w</b> options whether
    317 presented as part of the same argument or as a separate argument to <i>pr</i>, as suggested by the Utility Syntax Guidelines. The
    318 <b>-n</b> and <b>-s</b> options, however, are specified as in historical practice because they are frequently specified without
    319 their optional arguments. If a &lt;blank&gt; were allowed before the option-argument in these cases, a <i>file</i> operand could
    320 mistakenly be interpreted as an option-argument in historical applications.</p>
    321 <p>The text about the minimum number of lines in multi-column output was included to ensure that a best effort is made in balancing
    322 the length of the columns. There are known historical implementations in which, for example, 60-line files are listed by <i>pr</i>
    323 -2 as one column of 56 lines and a second of 4. Although this is not a problem when a full page with headers and trailers is
    324 produced, it would be relatively useless when used with <b>-t</b>.</p>
    325 <p>Historical implementations of the <i>pr</i> utility have differed in the action taken for the <b>-f</b> option. BSD uses it as
    326 described here for the <b>-F</b> option; System V uses it to change trailing &lt;newline&gt; characters on each page to a
    327 &lt;form-feed&gt; and, if standard output is a TTY device, sends an &lt;alert&gt; to standard error and reads a line from
    328 <b>/dev/tty</b> before the first page. There were strong arguments from both sides of this issue concerning historical practice and
    329 as a result the <b>-F</b> option was added. XSI-conformant systems support the System V historical actions for the <b>-f</b>
    330 option.</p>
    331 <p>The &lt;<i>output&nbsp;of&nbsp;date</i>&gt; field in the <b>-l</b> format is specified only for the POSIX locale. As noted, the
    332 format can be different in other locales. No mechanism for defining this is present in this volume of POSIX.1-2024, as the
    333 appropriate vehicle is a message catalog; that is, the format should be specified as a &quot;message&quot;.</p>
    334 <p>Some implementations of <i>pr</i> treat an empty file as an error when <b>-m</b> is not specified, but not when <b>-m</b> is
    335 specified (even if there is only one input file). Implementations are encouraged to eliminate this inconsistency by never treating
    336 an empty file as an error.</p>
    337 </blockquote>
    338 <h4 class="mansect"><a name="tag_20_95_19" id="tag_20_95_19"></a>FUTURE DIRECTIONS</h4>
    339 <blockquote>
    340 <p>A future version of this standard may require that an empty file is never treated as an error.</p>
    341 </blockquote>
    342 <h4 class="mansect"><a name="tag_20_95_20" id="tag_20_95_20"></a>SEE ALSO</h4>
    343 <blockquote>
    344 <p><a href="../utilities/expand.html#"><i>expand</i></a> , <a href="../utilities/lp.html#"><i>lp</i></a></p>
    345 <p>XBD <a href="../basedefs/V1_chap08.html#tag_08"><i>8. Environment Variables</i></a> , <a href=
    346 "../basedefs/V1_chap12.html#tag_12_02"><i>12.2 Utility Syntax Guidelines</i></a></p>
    347 </blockquote>
    348 <h4 class="mansect"><a name="tag_20_95_21" id="tag_20_95_21"></a>CHANGE HISTORY</h4>
    349 <blockquote>
    350 <p>First released in Issue 2.</p>
    351 </blockquote>
    352 <h4 class="mansect"><a name="tag_20_95_22" id="tag_20_95_22"></a>Issue 6</h4>
    353 <blockquote>
    354 <p>The following new requirements on POSIX implementations derive from alignment with the Single UNIX Specification:</p>
    355 <ul>
    356 <li>
    357 <p>The <b>-p</b> option is added.</p>
    358 </li>
    359 </ul>
    360 <p>The normative text is reworded to avoid use of the term &quot;must&quot; for application requirements.</p>
    361 </blockquote>
    362 <h4 class="mansect"><a name="tag_20_95_23" id="tag_20_95_23"></a>Issue 7</h4>
    363 <blockquote>
    364 <p>PASC Interpretation 1003.2-92 #151 (SD5-XCU-ERN-44) is applied.</p>
    365 <p>Austin Group Interpretation 1003.1-2001 #093 is applied.</p>
    366 <p>SD5-XCU-ERN-97 is applied, updating the SYNOPSIS.</p>
    367 </blockquote>
    368 <h4 class="mansect"><a name="tag_20_95_24" id="tag_20_95_24"></a>Issue 8</h4>
    369 <blockquote>
    370 <p>Austin Group Defect 251 is applied, adding a paragraph about problematic pathnames to the APPLICATION USAGE section.</p>
    371 <p>Austin Group Defect 1122 is applied, changing the description of <i>NLSPATH .</i></p>
    372 <p>Austin Group Defect 1433 is applied, changing &lt;carriage-return&gt; to &lt;newline&gt; in the description of the <b>-p</b>
    373 option.</p>
    374 <p>Austin Group Defect 1434 is applied, combining the two option groups in the SYNOPSIS into one.</p>
    375 <p>Austin Group Defect 1590 is applied, clarifying the requirements when an input file is empty and changing the STDOUT
    376 section.</p>
    377 </blockquote>
    378 <div class="box"><em>End of informative text.</em></div>
    379 <hr>
    380 <p>&nbsp;</p>
    381 <a href="#top"><span class="topOfPage">return to top of page</span></a><br>
    382 <hr size="2" noshade>
    383 <center><font size="2">UNIX® is a registered Trademark of The Open Group.<br>
    384 POSIX™ is a Trademark of The IEEE.<br>
    385 Copyright © 2001-2024 The IEEE and The Open Group, All Rights Reserved<br>
    386 [ <a href="../mindex.html">Main Index</a> | <a href="../basedefs/contents.html">XBD</a> | <a href=
    387 "../functions/contents.html">XSH</a> | <a href="../utilities/contents.html">XCU</a> | <a href="../xrat/contents.html">XRAT</a>
    388 ]</font></center>
    389 <hr size="2" noshade>
    390 <div class="NAVHEADER">
    391 <table summary="Header navigation table" class="nav" width="100%" border="0" cellpadding="0" cellspacing="0">
    392 <tr class="nav">
    393 <td class="nav" width="15%" align="left" valign="bottom"><a href="../utilities/pax.html" accesskey="P">&lt;&lt;&lt;
    394 Previous</a></td>
    395 <td class="nav" width="70%" align="center" valign="bottom"><a href="contents.html">Home</a></td>
    396 <td class="nav" width="15%" align="right" valign="bottom"><a href="../utilities/printf.html" accesskey="N">Next
    397 &gt;&gt;&gt;</a></td>
    398 </tr>
    399 </table>
    400 <hr align="left" width="100%"></div>
    401 </body>
    402 </html>