📄 expr.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-2003 The Open Group, All Rights Reserved --><title>expr</title></head><body bgcolor="white"><script type="text/javascript" language="JavaScript" src="../jscript/codes.js"></script><basefont size="3"> <a name="expr"></a> <a name="tag_04_50"></a><!-- expr --> <!--header start--><center><font size="2">The Open Group Base Specifications Issue 6<br>IEEE Std 1003.1, 2003 Edition<br>Copyright © 2001-2003 The IEEE and The Open Group, All Rights reserved.</font></center><!--header end--><hr size="2" noshade><h4><a name="tag_04_50_01"></a>NAME</h4><blockquote>expr - evaluate arguments as an expression</blockquote><h4><a name="tag_04_50_02"></a>SYNOPSIS</h4><blockquote class="synopsis"><p><code><tt>expr</tt> <i>operand</i></code></p></blockquote><h4><a name="tag_04_50_03"></a>DESCRIPTION</h4><blockquote><p>The <i>expr</i> utility shall evaluate an expression and write the result to standard output.</p></blockquote><h4><a name="tag_04_50_04"></a>OPTIONS</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_04_50_05"></a>OPERANDS</h4><blockquote><p>The single expression evaluated by <i>expr</i> shall be formed from the operands, as described in the EXTENDED DESCRIPTIONsection. The application shall ensure that each of the expression operator symbols:</p><pre><tt>( ) | & = > >= < <= != + - * / % :</tt></pre><p>and the symbols <i>integer</i> and <i>string</i> in the table are provided as separate arguments to <i>expr</i>.</p></blockquote><h4><a name="tag_04_50_06"></a>STDIN</h4><blockquote><p>Not used.</p></blockquote><h4><a name="tag_04_50_07"></a>INPUT FILES</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_04_50_08"></a>ENVIRONMENT VARIABLES</h4><blockquote><p>The following environment variables shall affect the execution of <i>expr</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_COLLATE</i></dt><dd><br>Determine the locale for the behavior of ranges, equivalence classes, and multi-character collating elements within regularexpressions and by the string comparison operators.</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 the behavior of character classes within regular expressions.</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_50_09"></a>ASYNCHRONOUS EVENTS</h4><blockquote><p>Default.</p></blockquote><h4><a name="tag_04_50_10"></a>STDOUT</h4><blockquote><p>The <i>expr</i> utility shall evaluate the expression and write the result, followed by a <newline>, to standardoutput.</p></blockquote><h4><a name="tag_04_50_11"></a>STDERR</h4><blockquote><p>The standard error shall be used only for diagnostic messages.</p></blockquote><h4><a name="tag_04_50_12"></a>OUTPUT FILES</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_04_50_13"></a>EXTENDED DESCRIPTION</h4><blockquote><p>The formation of the expression to be evaluated is shown in the following table. The symbols <i>expr</i>, <i>expr1</i>, and<i>expr2</i> represent expressions formed from <i>integer</i> and <i>string</i> symbols and the expression operator symbols (allseparate arguments) by recursive application of the constructs described in the table. The expressions are listed in order ofincreasing precedence, with equal-precedence operators grouped between horizontal lines. All of the operators shall beleft-associative.</p><center><table border="1" cellpadding="3" align="center"><tr valign="top"><th align="center"><p class="tent"><b>Expression</b></p></th><th align="center"><p class="tent"><b>Description</b></p></th></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> | <i>expr2</i></p></td><td align="left"><p class="tent">Returns the evaluation of <i>expr1</i> if it is neither null nor zero; otherwise, returns the evaluation of<i>expr2</i> if it is not null; otherwise, zero.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> & <i>expr2</i></p></td><td align="left"><p class="tent">Returns the evaluation of <i>expr1</i> if neither expression evaluates to null or zero; otherwise, returnszero.</p></td></tr><tr valign="top"><td align="left"><p class="tent"> </p></td><td align="left"><p class="tent">Returns the result of a decimal integer comparison if both arguments are integers; otherwise, returns the result ofa string comparison using the locale-specific collation sequence. The result of each comparison is 1 if the specified relationshipis true, or 0 if the relationship is false.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> = <i>expr2</i></p></td><td align="left"><p class="tent">Equal.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> > <i>expr2</i></p></td><td align="left"><p class="tent">Greater than.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> >= <i>expr2</i></p></td><td align="left"><p class="tent">Greater than or equal.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> < <i>expr2</i></p></td><td align="left"><p class="tent">Less than.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> <= <i>expr2</i></p></td><td align="left"><p class="tent">Less than or equal.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> != <i>expr2</i></p></td><td align="left"><p class="tent">Not equal.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> + <i>expr2</i></p></td><td align="left"><p class="tent">Addition of decimal integer-valued arguments.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> - <i>expr2</i></p></td><td align="left"><p class="tent">Subtraction of decimal integer-valued arguments.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> * <i>expr2</i></p></td><td align="left"><p class="tent">Multiplication of decimal integer-valued arguments.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> / <i>expr2</i></p></td><td align="left"><p class="tent">Integer division of decimal integer-valued arguments, producing an integer result.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> % <i>expr2</i></p></td><td align="left"><p class="tent">Remainder of integer division of decimal integer-valued arguments.</p></td></tr><tr valign="top"><td align="left"><p class="tent"><i>expr1</i> : <i>expr2</i></p></td><td align="left">
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -