余苏明的幻想乡

第三 shell变量的数值计算学习笔记

第三 shell变量的数值计算学习笔记

@(shell脚本)[学习]

[toc]

shell中常见的算术运算命令

运算操作符与运算命令 意义
(()) 用于整数运算的常用运算符
let 用于整肃运算,类似于(())
expr 可用于整数运算,但还有很多其他的额外功能
bc Linux下的一个计算器程序(适合整数及小树运算)
$[] 用于整数运算
awk
declare 定义变量值与属性,-i参数可以用于定义整形变量,做运算

(())双小括号数值运算

  • 该命令使用参数的数字及变量,必须为整数(型)
  • (())中使用变量时可以去掉变量前的\$符号,如果要输出,则需要\$符号
  • (())里的所有字符之间没有空格、有一个或多个空格,都不会影响结果

    expr的企业级实战

  1. 判断一个变量值或字符串是否为整数(使用expr $i + 1 &>/dev/null,判断$?的值是否为0)
  2. 判断文件扩展名是否符合要求(expr "$1" : "*.pub" &>/dev/null )
  3. 通过expr计算字符串长度(expr length "$char")

    基于shell的read命令

    格式: read [参数] [变量名]
  • -p prompt: 设置提示信息
  • -t timeout: 设置等待时间/s