Linux学习——shell编程之运算符「建议收藏」

shell编程之运算符一:shell中常见算术运算符号和优先级二:算术运算符 Shell 变量:是弱类型!不能进行加减乘除!比较麻烦!

大家好,又见面了,我是全栈君。

shell编程之运算符

一:shell中常见算术运算符号和优先级

列表内容

二:算术运算符

Shell 变量:是弱类型!不能进行加减乘除!比较麻烦!

例子 :shell变量弱类型
a=11
b=22
echo a+b  #输出结果 为 11+22 

1:双小括号 —— 使用率高,效率也高

(())  #数值运算符 ((运算符)) ,例如 ((x+y)),(())里面字符之间可以没有空格,也可以有空格都不会影响结果。

例子:

((x=x+1))  #将x+1的值赋给x

x=$((x+1))  #表示将表达式的值赋给 x

echo $((3+5))  #将表达式的值输出,此时需要使用echo ,并要加上$,如果没有$ 不会输出。

2:let运算命令

语法格式:
    let 赋值表达式   #功能等同于 ((赋值表达式))

举例:
i=1
let i=i+9  
echo i  # 输出结果为 10

3:expr命令

语法格式:
    expr 表达式
举例:
    expr 1 + 2 # 输出结果为3
    expr 2 * 2 # 输出错误,这里使用 * 需要转义 expr 2 \* 2

#注意,使用expr 计算的数字两边必须至少有一个空格,否则会报错!
#使用 * 乘号,必须转义!
    # expr 的一种使用场景:判断一个变量值或字符串是否为整数
    利用expr做计算,判断一个未知的变量和一个已知的整数相加,看返回结果是否为0,如果为0就认为做加法的变量为整数,否则就不是整数。
    例子:
    i=5
    expr $i + 5 #把i和整数5相加
    echo $?  # $? 获取上一个指令的返回状态,这里返回0,说明i是整数
    ----------------------------------------------------
    i=hello
    expr $i + 5
    echo $?  #返回值为2 ,说明i不是整数

备注:
# expr 可以判断文件扩展名是否符合要求
# 通过expr 计算字符串的长度 
    char="welcome to my blog"
    expr length "$char"  #类似命令,echo ${#char}

4:bc命令和awk ,可以计算小数

这两个命令这里不进行讲解,需要学习可以自行了解。

5:declare 声明变量类型

# declare[+/-][选项] 变量名

选项:
    -- - : 给变量设定类型属性     -- + : 取消变量的类型属性     -- -a :将变量声明为数组型(了解即可,实际用的很少)     -- -i :将变量声明为整数型(integer)     -- -x : 将变量声明为环境变量     -- -r :将变量声明为只读变量     -- -p :显示指定变量的被声明的类型 

注:declare 在实际的工作中用的不是很多,因为要定义才生效,了解即可 !

二:read命令的讲解

语法格式:
    read [参数][变量名]
    参数:
        -p prmmpt :设置提示信息         -t timeout :设置输出等待时间,单位默认为 秒

三: 变量测试

shell程序之变量测试

    变量测试:只针对shell,实际过程不常用,可了解。

    使用场景:变量测试在脚本优化时候使用

    shell尽量代码简单!逻辑简单!   

    变量测试 : http://www.imooc.com/video/6832

看到表格是的这个大概的意思就好了!

这里写图片描述


欢迎访问我的csdn博客,我们一同成长!

“不管做什么,只要坚持下去就会看到不一样!在路上,不卑不亢!”

博客首页:http://blog.csdn.net/u010648555

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/121152.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python面试题及答案_微型计算机原理与接口第四版答案

    python面试题及答案_微型计算机原理与接口第四版答案题目目录什么是接口测试?为什么要做接口测试/接口测试有哪些优势?请问你们公司是如何做接口测试的?怎么设计接口测试用例?没有接口文档如何做接口测试?怎么区分bug是前端还是后端的bug?常用的接口测试工具?接口之间数据依赖如何处理?依赖于第三方数据的接口如何进行测试?你平常做接口测试的过程中发现过哪些bug?当接口出现异常时候,你是如何分析异常的?什么是接口测试?接口测试就是通过测试不同情况下的入参与之相应的出参信息来判断接口是否符合或满足相应的功能性、安全性要求测试的重点是

    2022年9月26日
  • 命令行修改hosts_windows host文件

    命令行修改hosts_windows host文件命令行修改host文件打开终端;sudovi/etc/hosts;提示输入电脑密码输入密码,点击enter键,进入host页面;点击键盘i,命令行最下方显示–INSERT–,意思是当前可以编辑,输入需要修改的host;点击esc退出编辑;同时按住shift和:,输入wq保存退出host页面;…

    2022年10月11日
  • pycharm2021年激活码【注册码】

    pycharm2021年激活码【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
  • 关于hashlib哈希算法的一些个人笔记

    关于hashlib哈希算法的一些个人笔记摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。hashlib提供了常见的摘要算法,具体包括md5、sha1、sha224、sha256、sha512等,我们一般用的比较多是md5。注意加密是单向的。通过hashlib,可以把任意长度的字符串转换成固定长度的加密串,通常我们一般用hexdigest(),也就是…

    2022年6月3日
  • awk命令详解

    awk命令详解概述awk是专门为文本处理设计的编程语言,与sed类似都是以数据驱动的行处理软件,主要用于数据扫描、过滤、统计汇总工作,数据可以来自标准输入、管道或者文件。awk在20世纪70年代诞生与贝尔实验室。现在使用的版本是1988年发布的Gnuawk。基础语法记录与字段awk是一种处理文本文件的编程语言,文件的每行数据都被称为记录,默认以空格或制表符为分隔符,每条记录被分成若干字段(列),awk每次从文件中读取一条记录。语法格式:awk[选项]‘条件{动作}条件{动作}……’

    2022年7月11日
  • url的加密解密_url地址加密

    url的加密解密_url地址加密今天做项目构造链接参数的时候,推送到app上的链接点了没办法跳转到对应的界面对比了一下能跳转的链接,原来是url没有加密,就推送过去了在这里把对url加密解密的方法记录一下,方便以后使用publicstaticStringgetURLEncoderString(Stringstr){Stringresult="";if(null==str){…

    2022年10月29日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号