📄 unexpand.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta name="generator" content="HTML Tidy, see www.w3.org"><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><link type="text/css" rel="stylesheet" href="style.css"><!-- Generated by The Open Group's rhtm tool v1.2.1 --><!-- Copyright (c) 2001-2004 IEEE and The Open Group, All Rights Reserved --><title>unexpand</title></head><body bgcolor="white"><script type="text/javascript" language="JavaScript" src="../jscript/codes.js"></script><basefont size="3"> <a name="unexpand"></a> <a name="tag_04_156"></a><!-- unexpand --> <!--header start--><center><font size="2">The Open Group Base Specifications Issue 6<br>IEEE Std 1003.1, 2004 Edition<br>Copyright © 2001-2004 The IEEE and The Open Group, All Rights reserved.</font></center><!--header end--><hr size="2" noshade><h4><a name="tag_04_156_01"></a>NAME</h4><blockquote>unexpand - convert spaces to tabs</blockquote><h4><a name="tag_04_156_02"></a>SYNOPSIS</h4><blockquote class="synopsis"><div class="box"><code><tt><sup>[<a href="javascript:open_code('UP')">UP</a>]</sup> <img src="../images/opt-start.gif" alt="[Option Start]" border="0"> unexpand</tt> <b>[</b> <tt>-a| -t</tt> <i>tablist</i><b>][</b><i>file</i><tt>...</tt><b>]</b><tt><imgsrc="../images/opt-end.gif" alt="[Option End]" border="0"></tt></code></div></blockquote><h4><a name="tag_04_156_03"></a>DESCRIPTION</h4><blockquote><p>The <i>unexpand</i> utility shall copy files or standard input to standard output, converting <blank>s at the beginning ofeach line into the maximum number of <tab>s followed by the minimum number of <space>s needed to fill the same columnpositions originally filled by the translated <blank>s. By default, tabstops shall be set at every eighth column position.Each <backspace> shall be copied to the output, and shall cause the column position count for tab calculations to bedecremented; the count shall never be decremented to a value less than one.</p></blockquote><h4><a name="tag_04_156_04"></a>OPTIONS</h4><blockquote><p>The <i>unexpand</i> utility shall conform to the Base Definitions volume of IEEE Std 1003.1-2001, <a href="../basedefs/xbd_chap12.html#tag_12_02">Section 12.2, Utility Syntax Guidelines</a>.</p><p>The following options shall be supported:</p><dl compact><dt><b>-a</b></dt><dd>In addition to translating <blank>s at the beginning of each line, translate all sequences of two or more <blank>simmediately preceding a tab stop to the maximum number of <tab>s followed by the minimum number of <space>s needed tofill the same column positions originally filled by the translated <blank>s.</dd><dt><b>-t </b> <i>tablist</i></dt><dd>Specify the tab stops. The application shall ensure that the <i>tablist</i> option-argument is a single argument consisting ofa single positive decimal integer or multiple positive decimal integers, separated by <blank>s or commas, in ascending order.If a single number is given, tabs shall be set <i>tablist</i> column positions apart instead of the default 8. If multiple numbersare given, the tabs shall be set at those specific column positions. <p>The application shall ensure that each tab-stop position <i>N</i> is an integer value greater than zero, and the list shall bein strictly ascending order. This is taken to mean that, from the start of a line of output, tabbing to position <i>N</i> shallcause the next character output to be in the ( <i>N</i>+1)th column position on that line. When the <b>-t</b> option is notspecified, the default shall be the equivalent of specifying <b>-t 8</b> (except for the interaction with <b>-a</b>, describedbelow).</p><p>No <space>-to- <tab> conversions shall occur for characters at positions beyond the last of those specified in amultiple tab-stop list.</p><p>When <b>-t</b> is specified, the presence or absence of the <b>-a</b> option shall be ignored; conversion shall not be limitedto the processing of leading <blank>s.</p></dd></dl></blockquote><h4><a name="tag_04_156_05"></a>OPERANDS</h4><blockquote><p>The following operand shall be supported:</p><dl compact><dt><i>file</i></dt><dd>A pathname of a text file to be used as input.</dd></dl></blockquote><h4><a name="tag_04_156_06"></a>STDIN</h4><blockquote><p>See the INPUT FILES section.</p></blockquote><h4><a name="tag_04_156_07"></a>INPUT FILES</h4><blockquote><p>The input files shall be text files.</p></blockquote><h4><a name="tag_04_156_08"></a>ENVIRONMENT VARIABLES</h4><blockquote><p>The following environment variables shall affect the execution of <i>unexpand</i>:</p><dl compact><dt><i>LANG</i></dt><dd>Provide a default value for the internationalization variables that are unset or null. (See the Base Definitions volume ofIEEE Std 1003.1-2001, <a href="../basedefs/xbd_chap08.html#tag_08_02">Section 8.2, Internationalization Variables</a> forthe precedence of internationalization variables used to determine the values of locale categories.)</dd><dt><i>LC_ALL</i></dt><dd>If set to a non-empty string value, override the values of all the other internationalization variables.</dd><dt><i>LC_CTYPE</i></dt><dd>Determine the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte asopposed to multi-byte characters in arguments and input files), the processing of <tab>s and <space>s, and for thedetermination of the width in column positions each character would occupy on an output device.</dd><dt><i>LC_MESSAGES</i></dt><dd>Determine the locale that should be used to affect the format and contents of diagnostic messages written to standarderror.</dd><dt><i>NLSPATH</i></dt><dd><sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup> <img src="../images/opt-start.gif" alt="[Option Start]" border="0">Determine the location of message catalogs for the processing of <i>LC_MESSAGES .</i> <img src="../images/opt-end.gif" alt="[Option End]" border="0"></dd></dl></blockquote><h4><a name="tag_04_156_09"></a>ASYNCHRONOUS EVENTS</h4><blockquote><p>Default.</p></blockquote><h4><a name="tag_04_156_10"></a>STDOUT</h4><blockquote><p>The standard output shall be equivalent to the input files with the specified <space>-to- <tab> conversions.</p></blockquote><h4><a name="tag_04_156_11"></a>STDERR</h4><blockquote><p>The standard error shall be used only for diagnostic messages.</p></blockquote><h4><a name="tag_04_156_12"></a>OUTPUT FILES</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_04_156_13"></a>EXTENDED DESCRIPTION</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_04_156_14"></a>EXIT STATUS</h4><blockquote><p>The following exit values shall be returned:</p><dl compact><dt> 0</dt><dd>Successful completion.</dd><dt>>0</dt><dd>An error occurred.</dd></dl></blockquote><h4><a name="tag_04_156_15"></a>CONSEQUENCES OF ERRORS</h4><blockquote><p>Default.</p></blockquote><hr><div class="box"><em>The following sections are informative.</em></div><h4><a name="tag_04_156_16"></a>APPLICATION USAGE</h4><blockquote><p>One non-intuitive aspect of <i>unexpand</i> is its restriction to leading spaces when neither <b>-a</b> nor <b>-t</b> isspecified. Users who always want to convert all spaces in a file can easily alias <i>unexpand</i> to use the <b>-a</b> or<b>-t 8</b> option.</p></blockquote><h4><a name="tag_04_156_17"></a>EXAMPLES</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_04_156_18"></a>RATIONALE</h4><blockquote><p>On several occasions, consideration was given to adding a <b>-t</b> option to the <i>unexpand</i> utility to complement the<b>-t</b> in <a href="../utilities/expand.html"><i>expand</i></a> (see <a href="expand.html"><i>expand</i></a> ). The historicalintent of <i>unexpand</i> was to translate multiple <blank>s into tab stops, where tab stops were a multiple of eight columnpositions on most UNIX systems. An early proposal omitted <b>-t</b> because it seemed outside the scope of the User PortabilityUtilities option; it was not described in any of the base documents. However, hard-coding tab stops every eight columns was notsuitable for the international community and broke historical precedents for some vendors in the FORTRAN community, so <b>-t</b>was restored in conjunction with the list of valid extension categories considered by the standard developers. Thus,<i>unexpand</i> is now the logical converse of <a href="../utilities/expand.html"><i>expand</i></a>.</p></blockquote><h4><a name="tag_04_156_19"></a>FUTURE DIRECTIONS</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_04_156_20"></a>SEE ALSO</h4><blockquote><p><a href="expand.html"><i>expand</i></a>, <a href="tabs.html"><i>tabs</i></a></p></blockquote><h4><a name="tag_04_156_21"></a>CHANGE HISTORY</h4><blockquote><p>First released in Issue 4.</p></blockquote><h4><a name="tag_04_156_22"></a>Issue 6</h4><blockquote><p>This utility is marked as part of the User Portability Utilities option.</p><p>The definition of the <i>LC_CTYPE</i> environment variable is changed to align with the IEEE P1003.2b draft standard.</p><p>The normative text is reworded to avoid use of the term "must" for application requirements.</p></blockquote><div class="box"><em>End of informative text.</em></div><hr size="2" noshade><center><font size="2"><!--footer start-->UNIX ® is a registered Trademark of The Open Group.<br>POSIX ® is a registered Trademark of The IEEE.<br>[ <a href="../mindex.html">Main Index</a> | <a href="../basedefs/contents.html">XBD</a> | <a href="../utilities/contents.html">XCU</a> | <a href="../functions/contents.html">XSH</a> | <a href="../xrat/contents.html">XRAT</a>]</font></center><!--footer end--><hr size="2" noshade></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -