广告
返回顶部
首页 > 资讯 > 精选 >如何在Shell中计算变量数值
  • 657
分享到

如何在Shell中计算变量数值

2023-06-09 14:06:55 657人浏览 独家记忆
摘要

如何在shell中计算变量数值?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。算术运算符如果要执行算术运算符,就离不开各种运算符号,和其他编程语言类似,shell也有很多算术运算

如何在shell中计算变量数值?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

算术运算符

如果要执行算术运算符,就离不开各种运算符号,和其他编程语言类似,shell也有很多算术运算符。在任何一门形式的语言中均会存在算术运算的情况,Shell常见的运算符如下所示:

运算符含义
+ - * / %加 减 乘 除 求余
**幂运算
++ --自增 自减
&& || !与(and) 或(or) 非(取反)
< <= > >= == !=小于 小于等于 大于 大于等于 等于 不等于
<< >>左移位 右移位
~ | & ^按位取反 按位异或 按位与 按位或
= += -= *= /= %=如a+=1与a=a+1相同

算术运算命令 

运算命令含义
(())整数运算,效率很高
let整数运算,类似于(())
expr整数运算,另外还有很多额外功能
bclinux中的计算器,适合整数及小数运算
$[]整数运算
awk既可用于整数运算,也可用于小数运算
declare定义变量值和属性,-i 参数可以用于定义整型变量并进行运算

数值运算用法

(())用法

双小括号常用于数值运算和数值比较,因其效率很高,用法灵活,因此是常用的运算之一。

示例含义备注
((i=i+1))运算后并进行赋值,即先进行i+1计算并将该值赋值给i只能使用echo ((i+1))
((2>1&&8>3))进行比较后再进行逻辑运算常用于条件判断
echo $((4+2))直接进行计算并输出结果

(())用法示例

[root@localhost ~]# echo $((90-12));echo $((80+12)) # 基本运算7892[root@localhost ~]# ((a=100))[root@localhost ~]# ((a*=2))[root@localhost ~]# echo $a # 输出运算结果200[root@localhost ~]# ((a=100+2**10-200%100)) # 复杂运算[root@localhost ~]# echo $a1124[root@localhost ~]# a=$((50**2*2+2500)) # 运算并进行赋值[root@localhost ~]# echo $a7500[root@localhost ~]# a=100[root@localhost ~]# echo $((a++));echo $((++a)) # 自增运算100102[root@localhost ~]# echo $((a**2))10404[root@localhost ~]# echo $((2==2)) # 比较运算1   # 1:代表结果为真[root@localhost ~]# echo $((2>2))0   # 0:代表结果为假

++/--:如果++/--在变量前面,则代表先进行运算再输出结果,如果++/--在变量后面,则先输出结果再进行运算
(()):在执行命令时不需要添加,直接使用((4+3))即可,如果输出进行变量赋值,则需要添加,直接使用((4+3))即可,如果输出进行变量赋值,则需要添加,如使用a=$((4+3))

(())中所有字符中有无空格均不受影响

let用法

let的语法格式如下所示:

let var=value

let用法示例

[root@localhost ~]# a=8[root@localhost ~]# b=9[root@localhost ~]# c=$a+$b[root@localhost ~]# echo $c8+9  # 进行字符串连接[root@localhost ~]# let c=$a+$b[root@localhost ~]# echo $c17  # 进行相加

let let c=a+a+b等同于((c=a+a+b))

expr用法

expr的语法格式如下所示:

expr 表达式

expr用法示例

[root@localhost ~]# expr 4+8; expr 2*54+82*5[root@localhost ~]# expr 4 + 8; expr 2 \* 5 # 注意空格1210[root@localhost ~]# a=100[root@localhost ~]# b=200[root@localhost ~]# c=`expr $a + $b`[root@localhost ~]# echo $c300[root@localhost ~]# a=2[root@localhost ~]# b=5[root@localhost ~]# c=`expr $a \* $b`[root@localhost ~]# echo $c10

使用expr的注意事项如下所示:
运算符与计算项之间左右间必须要有一个空格,否则会出现报错
使用*需要进行转义符

bc用法

bc是Linux中的计算器,可作为命令行计算工具使用

bc用法示例

[root@localhost ~]# bcbc 1.06.95Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.This is free software with ABSOLUTELY NO WARRANTY.For details type `warranty'.1+231.0369+2.0147893.051689[root@localhost ~]# echo 100+200 | bc # 通过管道进行计算300[root@localhost ~]# a=250[root@localhost ~]# b=360[root@localhost ~]# c=`echo $a + $b | bc`[root@localhost ~]# echo $c610

awk用法示例

[root@localhost ~]# echo "12.36 12.36" | awk '{print $1+$2}'24.72[root@localhost ~]# echo "12.36 12.36" | awk '{print $1*$2+$2}'165.13[root@localhost ~]# echo "12.36 12.36" | awk '{print $1*($2+$2)}'305.539[root@localhost ~]# echo "10 100" | awk '{print $1*($2+$2)}'2000

declare用法

declare的语法格式如下所示:

declare -i var=value

declare用法示例

[root@localhost ~]# declare -i a=120 b=130[root@localhost ~]# a=a+b  #因为已经申明为整数,可以直接进行运算[root@localhost ~]# echo $a250

$[]用法示例

[root@localhost ~]# a=120[root@localhost ~]# b=1290[root@localhost ~]# a=$[a+b][root@localhost ~]# echo $a1410[root@localhost ~]# echo $[5/3]1[root@localhost ~]# echo $[5%3]2

read用法示例

[root@localhost ~]# read -t 20 -p "Input 3 number:" a b cInput 3 number:1 2 3[root@localhost ~]# echo $a $b $c # 通过用户输入传递变量赋值1 2 3

看完上述内容,你们掌握如何在Shell中计算变量数值的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网精选频道,感谢各位的阅读!

--结束END--

本文标题: 如何在Shell中计算变量数值

本文链接: https://www.lsjlt.com/news/256260.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何在Shell中计算变量数值
    如何在Shell中计算变量数值?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。算术运算符如果要执行算术运算符,就离不开各种运算符号,和其他编程语言类似,shell也有很多算术运算...
    99+
    2023-06-09
  • linux中shell的变量的数值计算
    1、expr命令 a=123 expr $a + 10 ##加法 expr $a - 10 ##减法 expr $a \* 10 ...
    99+
    2022-06-04
    变量数值计算 linux中shell的变量的数值计算
  • linux中shell怎么计算变量的数值
    这期内容当中小编将会给大家带来有关linux中shell怎么计算变量的数值,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1、expr命令a=123expr $a + 10&n...
    99+
    2023-06-09
  • Shell编程中变量数值计算的示例分析
    小编给大家分享一下Shell编程中变量数值计算的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!如果要执行运算,那就少不了运算符,和其他的编程语言相似,shell也有很多的运算符如下:+、-、:代表着加号 和减号 或...
    99+
    2023-06-09
  • Shell编程之变量数值计算方法示例
    算术运算符 如果要执行算术运算符,就离不开各种运算符号,和其他编程语言类似,shell也有很多算术运算符。在任何一门形式的语言中均会存在算术运算的情况,Shell常见的运算符如下所示: ...
    99+
    2022-06-04
    shell变量 shell 变量赋值 shell定义变量
  • python中如何进行变量赋值计算
    在Python中,可以使用等号(=)进行变量赋值计算。以下是一些示例:1. 简单赋值:```x = 5```2. 多重赋值:```x = y = z = 5```3. 增量赋值:```x += 5 # 等同于 x = x + 5```4...
    99+
    2023-08-11
    python
  • shell如何给变量重新赋值
    在shell中,可以使用等号(=)来给变量重新赋值。例如,假设有一个变量a,可以使用以下命令给它重新赋值:```a=10```这将把...
    99+
    2023-08-14
    shell
  • python如何计算缺失值的数量
    这篇文章主要为大家展示了“python如何计算缺失值的数量”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“python如何计算缺失值的数量”这篇文章吧。缺失值的数...
    99+
    2022-10-19
  • python如何在函数外赋值变量
    可以通过在python中使用global进行定义,实现在函数外赋值变量,具体方法如下:x=50def func():global xprint('x is',x)x=2print('changed global x ...
    99+
    2022-10-17
  • 如何在Python中使用静态变量在计数
    今天,在用Python写一个统计一个文件下有多少文件的小标本时,遇到了一个很棘手的问题。如何在Python中使用静态变量来计数。然后,就在网上一通查找,找的方法都是利用类的方法来实现静态变量。说实话没有看太懂,另外我想如果用类成员当做静态...
    99+
    2023-01-31
    变量 静态 如何在
  • 怎么在Java中使用变量赋值运算符
    今天就跟大家聊聊有关怎么在Java中使用变量赋值运算符,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 赋值运算符以符号“=”表示,它是一个二元运算符(对两个操作数作处理),...
    99+
    2023-05-31
    java 变量赋值运算符 ava
  • 如何理解Shell编程中Shell变量
    这篇文章主要介绍“如何理解Shell编程中Shell变量”,在日常操作中,相信很多人在如何理解Shell编程中Shell变量问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何理解Shell编程中Shell变量...
    99+
    2023-06-09
  • python如何计算不同类型变量
    这篇文章主要讲解了“python如何计算不同类型变量”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python如何计算不同类型变量”吧!说明数字变量可以直接计算。若变量为bool型,则计算时...
    99+
    2023-06-20
  • Linux中如何使用Shell变量
    Linux中如何使用Shell变量,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、本地变量的使用       ...
    99+
    2023-06-17
  • 如何在Java中使用Numpy来处理数值计算?
    Java是一门广泛使用的编程语言,在数值计算方面,Java本身的数值计算库已经相当强大,但是在一些特定的数值计算场景中,需要使用专业的数值计算库来进行更加高效的计算。其中,Numpy是一款专门用于数值计算的Python库,它提供了一系列高效...
    99+
    2023-06-14
    http numpy 索引
  • 如何在python中交换两个变量的值
    如何在python中交换两个变量的值?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。python可以做什么Python是一种编程语言,内置了许多有效的工具,Pyt...
    99+
    2023-06-14
  • 详解如何在Golang中修改变量的值
    Golang是当今最为流行的编程语言之一,它具有简单易用、高效、安全等优点,使得它在应用开发领域里得到越来越广泛的应用。在程序开发过程中,我们经常需要改变变量的值,本文将介绍如何在Golang中改变变量的值以及相关的语法细节。一、变量的声明...
    99+
    2023-05-14
  • 如何在SASS 中使用变量的默认值
    今天就跟大家聊聊有关如何在SASS 中使用变量的默认值,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。SASS 中定义的变量,后设置的值会覆盖旧的值。$color: red;...
    99+
    2023-06-08
  • 怎么在python中定义数值类型变量
    怎么在python中定义数值类型变量?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相比,Pyt...
    99+
    2023-06-14
  • vue中如何将变量赋值
    在vue中给变量赋值的方法:1.新建common.vue文件,并定义变量;2.创建vue.js项目;3.使用import方法导入变量;4.执行代码赋值使用变量;具体步骤如下:首先,新建一个common.vue文件,并在文件中定义一个全局变量...
    99+
    2022-10-07
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作