let

let

简单的计算器,执行算术表达式。

概要

let arg [arg ...]

主要用途

  • 执行一个或多个算术表达式。

参数

arg:算术表达式

返回值

let最后一个执行的表达式的计算结果为0时返回1,否则返回0
let执行的表达式的除数为0时,返回1并报错。

运算符优先级递减表

运算符 描述
id++, id--<code>|</code>变量后增量、变量后减量
++id, --id<code>|</code>变量预增量、变量预减量
-, +<code>|</code>正号、负号
!, ~<code>|</code>逻辑否、按位取反
**<code>|</code>幂运算
*, /, %<code>|</code>乘法、除法、取余
+, -<code>|</code>加法、减法
<<, >><code>|</code>按位左移、右移
<=, >=, <, ><code>|</code>比较
==, !=<code>|</code>等于、不等于
&<code>|</code>按位与
^<code>|</code>按位异或
\|<code>|</code>按位或
&&<code>|</code>逻辑与
\|\|<code>|</code>逻辑或
expr ? expr : expr<code>|</code>条件运算符(三元运算符)
=, *=, /=, %=, +=, -=,<code><br></code><<=, >>=, &=, ^=, \|=<code>|</code>赋值

例子

# 尝试直接在终端中执行算术表达式(就像在python的IDLE)。
3+4
bash:3+4:command not found...
# 换一种方式。
3 + 4
bash:3:command not found...
# 看来不行。
# let命令赋值。
let a=3**4
echo ${a}
# 显示81。
# ((...))和let命令等效。
((a=3**4))
# let常用于变量赋值,而外部命令expr可直接返回表达式的值。
let 3+4
# 没有显示7。
# 执行后显示7,注意空格。
expr 3 + 4
# 条件表达式。
if ((8>4)); then
  echo '8 is greater than 4.'
else
  echo 'error'
fi
# 注意空格。
if [[ 12 -le 10 ]]; then
  echo 'error'
else
  echo '12 is greater than 10.'
fi
# 可以通过declare命令设置整型属性的方法来进行算术运算。
# local命令与此类似。

# 没有指定整型属性,输出为字符串'a+b'。
declare a=3 b=4 c
c=a+b
echo ${c}
# 不过可以使用以下方式赋值。
c=$((a+b))
echo ${c}
# 显示7

# 设置了整型属性就可以直接加了。
declare -i a=3 b=4 c
c=a+b
echo ${c}
# 同上。
declare -i a
a=2*3
echo ${a}
# 显示6。

注意

  1. 该命令是bash内建命令,相关的帮助信息请查看help命令。
  2. 执行算术计算的命令除了let,还有外部命令exprbc等。

若文章对你有帮助,可以点赞或打赏支持我们。发布者:Aurora,转载请注明出处:http://61.174.243.28:13541/AY-knowledg-hub/let/

(0)
AuroraAurora站点维系者
上一篇 2023年 12月 19日 下午4:27
下一篇 2023年 12月 19日 下午4:27

相关推荐

  • joe

    文章目录joe补充说明语法选项参数 joe 强大的纯文本编辑器 补充说明 joe命令 是一款功能强大的纯文本编辑器,拥有众多编写程序和文本的优良特性。 语法 joe(选项)(参数)…

    入门教程 2023年 12月 19日
  • tcpdump

    文章目录tcpdump补充说明语法选项实例 tcpdump 一款sniffer工具,是Linux上的抓包工具,嗅探器 补充说明 tcpdump命令 是一款抓包,嗅探器工具,它可以打…

    入门教程 2024年 3月 11日
  • 结构体取代类

    文章目录结构体取代类Go 支持面向对象吗?使用结构体,而非类使用 New() 函数,而非构造器 结构体取代类 上一节:第二十五篇 mutex下一节:第二十七篇 组合取代继承 这是本…

    2023年 12月 5日
  • HTML 段落

    HTML 可以将文档分割为若干段落。 文章目录HTML 段落实例不要忘记结束标签HTML 折行实例HTML 输出- 使用提醒HTML 标签参考手册 HTML 段落 段落是通过 &l…

    2023年 4月 11日
  • TCP/IP 介绍

    TCP/IP 是用于因特网 (Internet) 的通信协议。 文章目录计算机通信协议(Computer Communication Protocol)什么是 TCP/IP?在 T…

    2023年 5月 15日
  • updatedb

    文章目录updatedb补充说明语法选项实例 updatedb 创建或更新slocate命令所必需的数据库文件 补充说明 updatedb命令 用来创建或更新slocate命令所必…

    入门教程 2024年 3月 11日
  • mysqlimport

    文章目录mysqlimport补充说明语法选项参数 mysqlimport 为MySQL服务器用命令行方式导入数据 补充说明 mysqlimport命令 为mysql数据库服务器提…

    入门教程 2024年 1月 3日
  • pwd

    文章目录pwd补充说明内建命令概要选项返回值注意外部命令概要主要用途选项返回值注意例子 pwd 显示当前工作目录的绝对路径。 补充说明 pwd(英文全拼:print working…

    入门教程 2024年 3月 1日
  • xlsclients

    文章目录xlsclients补充说明语法选项 xlsclients 列出显示器中的客户端应用程序 补充说明 xlsclients命令 用来列出显示器中的客户端应用程序。 语法 xl…

    入门教程 2024年 3月 11日
  • comm

    文章目录comm概要主要用途选项返回值例子比较排序过的文档交集差集注意 comm 按行比较两个已排序的文件。 概要 comm [OPTION]… FILE1 FILE2 主要用…

    入门教程 2023年 12月 7日

发表回复

登录后才能评论
Translate »