本篇内容主要讲解“shell编程数值运算有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“shell编程数值运算有哪些”吧!
Shell 编程中的基本数值运算,这类运算包括:
-
数值(包括整数和浮点数)间的加、减、乘、除、求幂、求模等
-
产生指定范围的随机数
-
产生指定范围的数列
Shell 本身可以做整数运算,复杂一些的运算要通过外部命令实现,比如 expr
,bc
,awk
等。另外,可通过 RANDOM
环境变量产生一个从 0 到 32767 的随机数,一些外部工具,比如 awk
可以通过 rand()
函数产生随机数。而 seq
命令可以用来产生一个数列。下面对它们分别进行介绍。
整数运算
范例:对某个数加 1
本次试验是在Linux虚拟机的交互模式运行
$ i=0; $ ((i++)) $ echo $i 1 $ let i++ $ echo $i 2 $ expr $i + 1 3 $ echo $i 2 $ echo $i 1 | awk '{printf $1+$2}' 3
说明: expr
之后的 $i
,+
,1 之间有空格分开。如果进行乘法运算,需要对运算符进行转义,否则 Shell 会把乘号解释为通配符,导致语法错误; awk
后面的 $1
和 $2
分别指 $i
和 1,即从左往右的第 1 个和第 2 个数。
用 Shell 的内置命令查看各个命令的类型如下:
$ type type type is a shell builtin $ type let let is a shell builtin $ type expr expr is hashed (/usr/bin/expr) $ type bc bc is hashed (/usr/bin/bc) $ type awk awk is /usr/bin/awk
从上述演示可看出: let
是 Shell 内置命令,其他几个是外部命令,都在 /usr/bin
目录下。而 expr
和bc
因为刚用过,已经加载在内存的 hash
表中。
说明:如果要查看不同命令的帮助,对于 let
和 type
等 Shell 内置命令,可以通过 Shell 的一个内置命令 help
来查看相关帮助,而一些外部命令可以通过 Shell 的一个外部命令 man
来查看帮助,用法诸如内置命令:help let
,外部命令 :man expr
等。
脚本范例:从 1 加到某个数
#!/bin/bash # calc.sh i=0; while [ $i -lt 10000 ] do ((i++)) done echo $i
说明:这里通过 while [ 条件表达式 ]; do .... done
循环来实现。-lt
是小于号 <
到此,相信大家对“shell编程数值运算有哪些”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/opensource/219716.html