⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 numerical-constants.html

📁 一本完整的描述Unix Shell 编程的工具书的所有范例
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><HTML><HEAD><TITLE>Numerical Constants</TITLE><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.57"><LINKREL="HOME"TITLE="Advanced Bash-Scripting Guide"HREF="index.html"><LINKREL="UP"TITLE="Operations and Related Topics"HREF="operations.html"><LINKREL="PREVIOUS"TITLE="Operations and Related Topics"HREF="operations.html"><LINKREL="NEXT"TITLE="Beyond the Basics"HREF="part3.html"><METAHTTP-EQUIV="Content-Style-Type"CONTENT="text/css"><LINKREL="stylesheet"HREF="common/kde-common.css"TYPE="text/css"><METAHTTP-EQUIV="Content-Type"CONTENT="text/html; charset=iso-8859-1"><METAHTTP-EQUIV="Content-Language"CONTENT="en"><LINKREL="stylesheet"HREF="common/kde-localised.css"TYPE="text/css"TITLE="KDE-English"><LINKREL="stylesheet"HREF="common/kde-default.css"TYPE="text/css"TITLE="KDE-Default"></HEAD><BODYCLASS="SECT1"BGCOLOR="#FFFFFF"TEXT="#000000"LINK="#AA0000"VLINK="#AA0055"ALINK="#AA0000"STYLE="font-family: sans-serif;"><DIVCLASS="NAVHEADER"><TABLEWIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><THCOLSPAN="3"ALIGN="center">Advanced Bash-Scripting Guide: An in-depth exploration of the art of shell scripting</TH></TR><TR><TDWIDTH="10%"ALIGN="left"VALIGN="bottom"><AHREF="operations.html">Prev</A></TD><TDWIDTH="80%"ALIGN="center"VALIGN="bottom">Chapter 8. Operations and Related Topics</TD><TDWIDTH="10%"ALIGN="right"VALIGN="bottom"><AHREF="part3.html">Next</A></TD></TR></TABLE><HRALIGN="LEFT"WIDTH="100%"></DIV><DIVCLASS="SECT1"><H1CLASS="SECT1"><ANAME="NUMERICAL-CONSTANTS">8.2. Numerical Constants</A></H1><P><ANAME="NUMCONSTANTS"></A>A shell script interprets a number	as decimal (base 10), unless that number has a	special prefix or notation. A number preceded by a	<TTCLASS="REPLACEABLE"><I>0</I></TT> is <TTCLASS="REPLACEABLE"><I>octal</I></TT>	(base 8). A number preceded by <TTCLASS="REPLACEABLE"><I>0x</I></TT>	is <TTCLASS="REPLACEABLE"><I>hexadecimal</I></TT> (base 16). A number	with an embedded <TTCLASS="REPLACEABLE"><I>#</I></TT> evaluates as	<TTCLASS="REPLACEABLE"><I>BASE#NUMBER</I></TT> (with range and notational	restrictions).</P><DIVCLASS="EXAMPLE"><HR><ANAME="NUMBERS"></A><P><B>Example 8-4. Representation of numerical constants</B></P><TABLEBORDER="0"BGCOLOR="#E0E0E0"WIDTH="100%"><TR><TD><PRECLASS="PROGRAMLISTING">   1&nbsp;#!/bin/bash   2&nbsp;# numbers.sh: Representation of numbers in different bases.   3&nbsp;   4&nbsp;# Decimal: the default   5&nbsp;let "dec = 32"   6&nbsp;echo "decimal number = $dec"             # 32   7&nbsp;# Nothing out of the ordinary here.   8&nbsp;   9&nbsp;  10&nbsp;# Octal: numbers preceded by '0' (zero)  11&nbsp;let "oct = 032"  12&nbsp;echo "octal number = $oct"               # 26  13&nbsp;# Expresses result in decimal.  14&nbsp;# --------- ------ -- -------  15&nbsp;  16&nbsp;# Hexadecimal: numbers preceded by '0x' or '0X'  17&nbsp;let "hex = 0x32"  18&nbsp;echo "hexadecimal number = $hex"         # 50  19&nbsp;# Expresses result in decimal.  20&nbsp;  21&nbsp;# Other bases: BASE#NUMBER  22&nbsp;# BASE between 2 and 64.  23&nbsp;# NUMBER must use symbols within the BASE range, see below.  24&nbsp;  25&nbsp;  26&nbsp;let "bin = 2#111100111001101"  27&nbsp;echo "binary number = $bin"              # 31181  28&nbsp;  29&nbsp;let "b32 = 32#77"  30&nbsp;echo "base-32 number = $b32"             # 231  31&nbsp;  32&nbsp;let "b64 = 64#@_"  33&nbsp;echo "base-64 number = $b64"             # 4031  34&nbsp;# This notation only works for a limited range (2 - 64) of ASCII characters.  35&nbsp;# 10 digits + 26 lowercase characters + 26 uppercase characters + @ + _  36&nbsp;  37&nbsp;  38&nbsp;echo  39&nbsp;  40&nbsp;echo $((36#zz)) $((2#10101010)) $((16#AF16)) $((53#1aA))  41&nbsp;                                         # 1295 170 44822 3375  42&nbsp;  43&nbsp;  44&nbsp;#  Important note:  45&nbsp;#  --------------  46&nbsp;#  Using a digit out of range of the specified base notation  47&nbsp;#+ gives an error message.  48&nbsp;  49&nbsp;let "bad_oct = 081"  50&nbsp;# (Partial) error message output:  51&nbsp;#  bad_oct = 081: value too great for base (error token is "081")  52&nbsp;#              Octal numbers use only digits in the range 0 - 7.  53&nbsp;  54&nbsp;exit 0       # Thanks, Rich Bartell and Stephane Chazelas, for clarification.</PRE></TD></TR></TABLE><HR></DIV></DIV><DIVCLASS="NAVFOOTER"><HRALIGN="LEFT"WIDTH="100%"><TABLEWIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top"><AHREF="operations.html">Prev</A></TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="index.html">Home</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top"><AHREF="part3.html">Next</A></TD></TR><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top">Operations and Related Topics</TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="operations.html">Up</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top">Beyond the Basics</TD></TR></TABLE></DIV></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -