shell计算表达式摘要

2023-11-02

LinuxShell算术运算

Bash shell 的算术运算有四种方式:
1:使用 expr 外部程式
加法 r=`expr 4 + 5`
echo $r
注意! '4' '+' '5' 这三者之间要有空白
r=`expr 4 * 5` #错误
乘法 r=`expr 4 \* 5`

2:使用 $(( ))
r=$(( 4 + 5 ))
echo $r

3:使用 $[ ]

r=$[ 4 + 5 ]
echo $r

乘法
r=`expr 4 \* 5`
r=$(( 4 * 5 ))
r=$[ 4 * 5 ]
echo $r

除法
r=`expr 40 / 5`
r=$(( 40 / 5 ))
r=$[ 40 / 5 ]
echo $r

减法
r=`expr 40 - 5`
r=$(( 40 - 5 ))
r=$[ 40 - 5 ]
echo $r

求余数
r=$[ 100 % 43 ]
echo $r

乘幂 (如 2 的 3 次方)
r=$(( 2 ** 3 ))
r=$[ 2 ** 3 ]
echo $r
注:expr 沒有乘幂

4:使用let 命令
加法:
n=10
let n=n+1
echo $n #n=11

乘法:
let m=n*10
echo $m

除法:
let r=m/10
echo $r


求余数:
let r=m%7
echo $r


乘冪:
let r=m**2
echo $r

虽然Bash shell 有四种算术运算方法,但并不是每一种都是跨平台的,建议使用expr
另外,我们在 script 中经常有加1操作,以下四法皆可:
m=$[ m + 1]
m=`expr $m + 1`
m=$(($m + 1))
let m=m+1

 

 原文:http://www.cppblog.com/fwxjj/archive/2009/09/04/95342.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

shell计算表达式摘要 的相关文章

  • opencv2与opencv的不同

    一 Opencv2与opencv1的区别 Opencv1 0版本于2006年面世 主要基于C语言 2009年发布opencv2 主要基于C 此时OpenCV库被划分成多个模块 这些模块被编译成库文件后 位于lib文件夹中 主要有以下模块 版
  • AIX 文件 打包 与 压缩 tar gzip compress 的使用

    今天在Aix用tar cvf 备份 打成tar包 占有硬盘空间过大 没有压缩比 尝试使用tar zcvf linux系统下可以用 z 命令 z 用gzip来压缩 解压缩文件 加上该选项后可以将档案文件进行压缩 但还原时也一定要使用该选项进行
  • (Visual Grounding 论文研读) Pseudo-Q: Generating Pseudo Language Queries for Visual Grounding, 2022 CVPR

    最近在看关于visual grounding的文章 对于文章中理解不恰当的内容欢迎批评指正 本文将根据论文的结构来组织结构并且展开一定的拓展 Abstract visual grounding VG 即根据自然语言查询在图像中定位对象 是视
  • m3u8加密文件原理及下载脚本

    一 加密ts文件解密 EXTM3U EXT X VERSION 3 EXT X MEDIA SEQUENCE 0 EXT X ALLOW CACHE YES EXT X TARGETDURATION 13 EXT X KEY METHOD
  • GBASE 8s 表分片

    表分片 技术允许在表一级对数据存储进行控制 用户可以对表中的记录或索引进行分组 并且存储在不同的位 置 这样可以将数据存储到多个磁盘上 从而减少对磁盘I O的竞争 数据分片的方案以及分片数据所存放的一组 dbspace构成了 分片策略 数据
  • Canvas对ImageData进行Resize操作(平滑高性能处理)

    问题背景 通过getImageData函数得到的ImageData通过putImageData重新放到canvas容器无法进行resize操作 如果通过toDataURL函数转为Image再使用drawImage函数性能太差 解决代码 处理
  • 数据科学编程技能

    特点 使用数据科学技术 您可以将原始数据转化为可操作的见解 适用于从城市规划到精准医学的各个领域 数据科学编程技能汇集了您入门所需的所有基础技能 即使您没有编程或数据科学经验 指导安装和配置解决专业级数据科学问题所需的工具 包括广泛使用的
  • 配置CentOS8 yum镜像源

    配置yum镜像主要修改三个文件 文件位置 etc yum repos d CentOS Linux AppStream repo 将上面的两段代码注释掉 之后添加清华镜 清华云镜像地址 baseurl https mirrors tuna
  • 【问题记录】pytorch自定义数据集 No such file or directory, invalid index of a 0-dim

    保存模型 保存整个神经网络的结构和模型参数 torch save mymodel mymodel pkl 只保存神经网络的模型参数 torch save mymodel state dict mymodel params pkl 导入模型

随机推荐

  • [Linux]Ubuntu下idea的idea64.vmoption文件

    换了ubuntu环境开发 动了help gt Edit custom Vm options的文件 导致idea无法打开 解决办法 删除 root config JetBrains IntelliJIdea2022 1 idea64 vmop
  • [电动智能汽车-4]:原理 - 高压电源系统与互锁系统

    目录 第1章 高压电源系统概述 1 1 高压电源系统原理图 1 2 高压电源系统连接图 1 3 互锁 第2章 动力电池 2 1 安装位置 2 2 动力电池的外观 2 3 动力电池的组成 2 4 电芯的类型 2 5 电池包的参数 2 6 高压
  • Docker的Compose规范现已成为开放标准

    由Docker创建的用于定义多容器应用程序的系统Docker Compose现在将作为开放标准进行开发 称为新标准的Compose规范旨在允许Compose创建的应用程序在Kubernetes和Amazon Elastic Containe
  • 你不知道的JavaScript----promise

    目录 什么是Promise Promise Promise 值 完成事件 Promise 事件 具有 then 方法的鸭子类型 Promise 信任问题 调用过早 调用过晚 Promise 调度技巧 回调未调用 调用次数过少或过多 未能传递
  • 正则表达式之旅_sed_awk

    谈谈正则表达式这个东西 我想作为一个程序员 正则表达式大家绝对不陌生 正则表达式好像一个有限则动机 主要作用是匹配 但是同时因为这个功能 我们可以扩展很多其他用法 像很多语言都引人了正则表达式 java C 等面向对象语言 更多的是脚本语言
  • 基于Smack3.0.4+ Openfire3.10.2开发之Android 客户端之一

    我们在之前依次介绍openfire部署以及smack常用API的使用 这一节中我们着力介绍如何基于asmack开发一个Android的客户端 本篇的重点在实践 讲解和原理环节 大家可以参考前面我所发布的OpenFire和Smack的相关文章
  • Vmware 显示“您在运行该虚拟机时启用了侧通道缓解+DevicePowerOn”启动失败+模块“VPMC”启动失败”

    一 问题描述 首先显示 您在运行该虚拟机时启用了侧通道缓解 侧通道缓解可增强安全性 但也会降低性能 要禁用缓解 请在虚拟机设置的 高级 面板中更改侧通道缓解设置 有关更多详细信息 请参阅 VMware 知识库文章 79832 网址为 htt
  • 最小(大)堆实现topK问题

    最小 大 堆实现topK问题 topK问题 即求一组数据中最大 最小 的前K个数据 一般情况下数据量都比较大 比如 班级前10名 世界500强 等级分排名等 对于topK问题 能想到的最简单直接的方式就是排序 但是 如果数据量非常大 排序就
  • Pytorch框架基础

    目录 1 02张量的简介与创建 pytorch中的Tensor 张量的创建 1 03张量的操作 1 拼接 2 张量的拼接与切分 3 张量索引 4 张量变换 1 04计算图与动态图机制 1 05自动求导和Logist回归 1 Autograd
  • wandb demo

    import wandb import random class test def init self team proj name self run wandb init entity team project proj name nam
  • Go_时间日期函数

    时间日期 func main 获取当前时间 now time Now fmt Println 当前时间 now 获取年月日时分秒 fmt Println 年 now Year fmt Println 月 int now Month 不转in
  • VMware虚拟机下安装Ubuntu16.04镜像完整教程

    目录 1 安装前准备 2 安装Ubuntu 16 04镜像 3 One More Thing 1 安装前准备 PC电脑操作系统是WIN7 已正确安装虚拟机VMware 12 2 安装Ubuntu 16 04镜像 下载Ubuntu镜像文件 下
  • 宝可梦 序列号认证服务器发生了错误,宝可梦探险寻宝无法连接服务器是什么原因...

    宝可梦探险寻宝中不少玩家反馈都会遇到宝可梦探险寻宝无法连接服务器是什么原因的问题 那么怎么解决这个问题呢 这边ourplay小编为大家分享几个解决方案 宝可梦探险寻宝游戏简介 宝可梦 探险寻宝 是任天堂在2018年5月29日推出的游戏 最初
  • 用了HBuilderX近一年,最后还是选择了VSCode

    用了HBuilderX近一年 最后还是选择了VSCode 关于前端的IDE 流行的无非也就那么几款 但若要问那款编辑器最好用 键盘侠们可能要闹翻了天 本人接触前端以来大概使用webstorm有3 4个月之久 当时webstorm好像名气比V
  • 28天自我挑战,从0开始学会Python月入25K

    28天自我挑战 从0开始学 会Python月入28K Python最近这么火 很多小伙伴还不知道Python到底是什么 能干什么 一句话 Python是最简洁 最好学的语言 学完Python让自己的工作效率提高几倍 不用每天熬夜加班 就能轻
  • LaTeX“U+200B”错误

    就是中文符号的问题 包括空格这种 我错的是空格问题 但空格我重新敲了一遍也不好使 翻到了另一个博主写的用Notepad 非常之好用 把那段报错文字复制过来 搜索 gt 替换 输入 u200b 找到中文空格位置 删除换成英文空格 再把这段文字
  • Android 性能优化 内存抖动 内存泄漏

    本文链接 https blog csdn net feather wch article details 131545501 云笔记链接 https note youdao com s YcbbhAYK 内存抖动 1 内存抖动是什么 内存可
  • C++图的建立---邻接矩阵-----邻接表

    目录 图的表示方式 邻接矩阵 邻接表 图的遍历 深度优先遍历 深度优先遍历算法步骤 图的广度优先遍历 广度优先遍历算法步骤 图的邻接矩阵存储来创建图 代码 运行结果 图的邻接表存储来创建图 如下图 运行结果 图的表示方式 图的表示方式有两种
  • 机器学习实验一SVM分类实验

    一 实验目的和内容 一 实验目的 1 熟悉支持向量机SVM Support Vector Machine 模型分类算法的使用 2 用svm train中提供的代码框架 填入SVM分类器代码 用train data训练数据提供的矩阵来训练参数
  • shell计算表达式摘要

    LinuxShell算术运算 Bash shell 的算术运算有四种方式 1 使用 expr 外部程式加法 r expr 4 5 echo r注意 4 5 这三者之间要有空白r expr 4 5 错误乘法 r expr 4 5 2 使用 r