设为首页 加入收藏

TOP

Shell脚本编程之算数运算
2017-05-02 10:22:25 】 浏览:1006
Tags:Shell 脚本 编程 算数 运算

在进行Shell脚本编程之前一定要在脚本的开头加上上头这一句话,并且要顶着头写,前头不能有空格和空行。这句话的意思是告诉系统用哪一种shell来执行此脚本。如果没有这句话就有可能发生一些意想不到的错误。


接下来说一说在shell脚本中或命令行中如何进行算数运算。也许你已经发现,因为shell中的变量的格式都为字符类型,所以如果只是简单的让一个变量去等于一个表达式的话,那么当输出此变量的时候输出的还是哪个表达式,而并不是表达式所得出来的结果,比如:
 ~]$ a=1+2
 ~]$ echo $a
1+2


我们想让a=3,但是当我们使用echo把a这个变量显示出来的时候却得到的是字符串“1+2”。
那么当我们想要变量a等于3的时候应该怎么做呢?
此时有以下几种方法:


1.使用命令let就能得到想要的结果了,格式为:let VAR=算术表达式


~]$ let a=1+2
~]$ echo $a
3


除了加法,简单的算数运算还有减法、乘法、除法、取模和次幂。当然,let的功能并不只有这些,基本上我们可以想到的表达式都可以使用这个命令来进行运算,比如自加、自减等运算:
12345 let B+=2    等同于    let B=b+2
let B-=2    等同于    let B=B-2
let B*=2    等同于    let B=B*2
let B/=2    等同于    let B=B/2
let B%=2    等同于    let B=B%2


当变量和两个连续的加号或减号在一起连用就是自加一,但是会有前后的区别,比如:
1)当变量在前时,变量a先将值赋给变量b,然后自加一:
  ~]$ a=2
 ~]$ let b=a++
 ~]$ echo $b
2
  ~]$ echo $a
3


2)当变量在后时,变量a先自加一,然后将值赋给变量b:
  ~]$ a=2
 ~]$ let b=++a
 ~]$ echo $b
3
 ~]$ echo $a
3


同理:当运算符为“-”时也是如此。


2.VAR=$[算术表达式],格式为:SUM=$[C+B]相当于$[$C+$B],中括号里可以是变量也可以直接是一个表达式,比如
~]$ echo $b
3
 ~]$ echo $a
3
 ~]$ echo $[a+b]
6

 ~]$ echo $((1+2))
3


3.VAR=$((算术表达式)),这种方法和上一种方法基本一样,但是注意,小括号必须为两个,当只有一个小括号的时候是命令的引用。


4.expr ARGU1 ARGU2 ARGU3  ARGU1和ARGU3 必须是数值,ARGU2是运算符,且每个参数之间要用空格隔开,否则不能输出正常的结果,比如:
 ~]$ expr 1+2
1+2
 ~]$ expr 1 + 2
3


5.echo “算术表达式” | bc
    这种方法是利用管道线将一个算数表达式送过bc命令


比如:
~]$ echo "1+2" | bc
3


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇C#设计模式-单例模式 下一篇C语言中变量存储类别

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目