首页 > 系统相关 >Shell-变量的算术运算

Shell-变量的算术运算

时间:2023-11-01 14:36:02浏览次数:33  
标签:例如 Shell 运算 算术 整数 awk variable 变量

一、算术运算符

1、+、-

求和、 a+b   a-b   

 

2、 *、/、%

求乘积,商,余数    a*b   a/b    a/b

 

3、**

幂运算,例如 3**3 是求 3 的立方,即 27

 

4、 +=、-=、 *=、/=、%=

例 a+=1 相当于 a=a+1

 

5、++variable、- -variable

 先将变量variable的值加1,然后再赋给variable; 先将变量variable的值减1,然后再赋给 variable。

 

6、variable++、 variable--

先使用 variable 的值,然后再将该变量的值加 1 ; 先使用 variable 的值,然后再

将该变量的值减 1。

二、运算命令

1、(())

用于整数运 算的常用运 算符

在 (()) 中使用变量时可以去掉变量前的 $ 符号。

例如: var=$((1+2*9/3))

 

2、let

用于整数运算。

使用 let 命令可以执行一个或者多个算术表达式,其中的变量名毋需使用 $ 符号。

例如: let  var2=1+2*9/3

 

3、expr

可用于整数运算,但还有很多其他的额外功能。

使用 expr 时,运算符及用于计算的数字左右都至少有一个空格,否则会报错;使用乘号时,必须使用反斜线屏蔽其特定含义;使用expr 做计算,将一个未知的变量和一个已知的整数相加,看返回码是否为 0,如果为 0 就认为做加法的变量为整数,否则就不是整数。

例如:var3=`expr 1 + 2 \* 9 / 3`

 注意:当反引号中的的数字和+之间存在空格才能计算出结果,否则运行出来的是一个表达式4+2。

 

4、bc

linux下的一个计算器程序(适合整数及小数运算)

例如:echo `seq -s "+" 10` = `seq -s "+" 10|bc`

1+2+3+4+5+6+7+8+9+10 = 55

seq 是生成数字序列, -s 是指定数字序列之间的分隔符。

例如:var4=`echo  1+2*9/3 | bc`

 

5、$[]

用于整数运算

例如:var5=$[1+2*9/3]

 

6、awk

awk 既可以用于整数运算,也可以小数运算。

例如:

var6=`awk  'BEGIN {print 1+2*4/3}'`

 

例如:

 var7=`echo 1 2 4 3 | awk '{print $1+$2*$3/$4}'`

 

标签:例如,Shell,运算,算术,整数,awk,variable,变量
From: https://www.cnblogs.com/yeyuzhuanjia/p/17803040.html

相关文章

  • Metasploit使用教程-(反弹shell)
    Metasploit反弹shell 利用msfvenom生成一个反弹shell程序 msfvenom-lpayloads可以查看所有payloadWindows通用反向shell:windows/meterpreter/reverse  --基于TCP的反向链接反弹shell,使用起来很稳定。windows/meterpreter/reverse_http  --基于http方式的反......
  • π的运算
     importrandomS=1e6N=0foriinrange(int(S)):x=random.random()y=random.random()d=(x-0.5)**2+(y-0.5)**2ifd<=0.5**2:N+=1else:passPI=4*N/Sprint(PI)print("3118") ......
  • 二、2、java基础之运算符与键盘录入(scanner)
    一、运算符分类:算术运算符:+,-,*,/,++,--赋值运算符:=,+=,-=,*=,/=,%=关系运算符:==,>,<,>=,<=,!=逻辑运算符:&,|,^,~,||,&&位运算符:&,|,^,~,<<,>>,>>>三目运算符:(关系表达式)?表达式1:表达式2;packagecom.shujia.day02;/*三目运算符......
  • 确定已安装的PowerShell版本
    内容来自DOChttps://q.houxu6.top/?s=确定已安装的PowerShell版本我如何确定计算机上安装了哪种版本的PowerShell,以及是否确实安装了它?使用$PSVersionTable.PSVersion来确定引擎版本。如果该变量不存在,可以安全地假设引擎版本为1.0。请注意,$Host.Version和(Get-Host).Vers......
  • 软件测试|MySQL算术运算符使用详解
    简介MySQL是一种流行的开源关系型数据库管理系统,广泛用于各种应用程序和网站的数据存储和管理。在MySQL中,算术运算符是执行数学计算的特殊符号,用于处理数字类型的数据。本文将详细介绍MySQL中常用的算术运算符及其使用方法。常用算术运算符算术运算符是SQL中最基本的运算符,M......
  • 软件测试|MySQL逻辑运算符使用详解
    简介在MySQL中,逻辑运算符用于处理布尔类型的数据,进行逻辑判断和组合条件。逻辑运算符主要包括AND、OR、NOT三种,它们可以帮助我们在查询和条件语句中进行复杂的逻辑操作。本文将详细介绍MySQL中逻辑运算符的使用方法和示例。AND运算符AND运算符用于将多个条件组合起来,要求所有......
  • 解决pandas.core.frame.DataFrame格式数据与numpy.ndarray格式数据不一致导致无法运算
    解决pandas.core.frame.DataFrame格式数据与numpy.ndarray格式数据不一致导致无法运算问题在数据分析与机器学习中,经常会遇到处理数据的问题。而使用Python进行数据处理和分析时,pandas库和numpy库是常用的工具。其中,pandas库提供了DataFrame数据结构,numpy库提供了ndarray数据结构。......
  • 【ROS2机器人入门到实战】矩阵运算实战
    3.矩阵运算实战写在前面当前平台文章汇总地址:ROS2机器人从入门到实战获取完整教程及配套资料代码,请关注公众号<鱼香ROS>获取教程配套机器人开发平台:两驱版|四驱版为方便交流,搭建了机器人技术问答社区:地址fishros.org.cn上一节我们安装好了MiniConda和Jupyter,本节课我们继续回到学......
  • Shell脚本操作OSS服务:PUT、GET(纯shell脚本无sdk)
    Shell脚本操作OSS服务:PUT、GET(纯shell脚本无sdk)前提:一般情况下对OSS操作都会通过SDK,但是很多情况下对OSS进行简单的上传下载的操作,那么SDK就显得有些臃肿,先要下载sdk包,然后再写些简单的操作脚本,而通过shell脚本就会简单很多。而且很多场景:线上网站、数据库等,生产出来的网站数据、......
  • 备份数据库文件至OSS服务(纯shell脚本无sdk)
    背景:凡事使用服务器搭建的网站就需要定时备份网站数据,常见的方法是打包网站目录,然后备份到FTP服务器上等。也有通过OSSSDK把备份的网站文件上传到OSS服务器上,但是通过SDK来实现,需要一定的技术能力,而且相对比较复杂,需要使用更多的文件,而这篇文章是通过shell脚本,并不是通过OSSSDK......