本篇内容主要讲解“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编程数值运算有哪些”有了更深的了解,不妨来实际操作一番吧!这里是天达云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!