shell编程基础-read命令-shell运算符-shell数值运算方式-基础四则运算脚本-shell变量测试

14 篇文章 0 订阅

shell编程基础

1. read命令

read 接收键盘输入

1.1 选项

-p:提示信息
-t:等待时间,read -t 30,会等待30s让你输入
-n:最多只允许输入指定个数的字符,如果输入已经达到个数,会自动回车
-s:隐藏输入内容(就像输入密码时候一样)

基础用法:

read -p "请输入一个数字:" num1  # 用户输入的内容会保存再num1变量中

2. shell运算符

2.1 数值运算方法

2.1.1 declare 命令

声明变量,设置或显示变量的值和属性。

-f 将操作或显示限制为函数名及函数定义。
-F 只显示函数名(调试时附加行号和源文件)。
-g 在shell函数中使用时创建全局变量;其他情况下忽略。
-p 显示每个名称的属性和值。

*设置属性的选项:
-a 创建数组(如果支持)。
-A 创建关联数组(如果支持)。
-i 增加整型属性。
+i 删除整型属性。
-l 增加小写属性,变量的值将转换为小写。
+l 删除小写属性。
-n 增加引用属性(如果该选项存在)。
+n 删除引用属性(如果该选项存在)。
-r 增加只读属性。
-t 增加追踪属性。
+t 删除追踪属性。
-u 增加大写属性,变量的值将转换为大写。
+u 删除大写属性。
-x 增加导出属性。
+x 删除导出属性。
2.1.2 数组(列表)
  • 数组的定义:
    在这里插入图片描述
  • 数组的调用
    在这里插入图片描述
2.1.3 只读属性

declare -r 变量名
变成只读之后,我们完全不能操作了已经,包括修改,删除,减掉只读属性都不行

2.1.4 数值运算方法
  • declare赋值法
    通过declare -i,把字符串变成数字再执行运算:
    在这里插入图片描述
  • expr 运算符
    expr后面必须有空格
    在这里插入图片描述
  • let 命令
    在这里插入图片描述
  • $(())格式
    在这里插入图片描述

3.我们来写个简易的四则运算脚本吧

  1 #!/bin/bash
  2 read -p "请输入数字1:" num1
  3 read -p "请输入数字2:" num2
  4 read -n 1 -p "请输入你想要进行的运算[+|-|*|/|%]:" sign
  5 
  6 echo -e "\n"  # echo -e 可以输出特殊符号
  7 
  8 [ $sign == "+" ] && echo $(( $num1 + $num2 )) && exit # exit是退出程序命令
  9 [ $sign == "-" ] && echo $(( $num1 - $num2 )) && exit
 10 [ $sign == "*" ] && echo $(( $num1 * $num2 )) && exit
 11 [ $sign == "/" ] && echo $(( $num1 / $num2 )) && exit
 12 [ $sign == "%" ] && echo $(( $num1 % $num2 )) && exit
 13 
 14 echo "你输入的运算符不对,请输入正确的运算符+-*/!!!"

运行结果:
在这里插入图片描述
这个脚本还存在很多问题,比如没有对数字进行判断等,后续再完善

4. 变量测试与置换

目的为了检测变量是否存在,以及是否设置了空值。
变量测试
内容太繁琐了,我们只看第一条:
测试过程

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值