变量

1.  不同于其它语言需要先声明变量

2 .等号的两边不能有空格

3. 调用变量: $a 或者 ${a}

 a=;
echo $a;
echo ${a}
变量 变量意思
$? 判断上一条命令执行的是否成功(0:成功 非0:失败)
$0 返回脚本的文件名称
$1 - $9 返回对应的参数值
$* 返回所有的参数值
$# 返回参数的个数

符号

符号 符号意思
> 会覆盖原有的内容
>> 不会覆盖原有的内容,尾部追加
; 执行多条命令
| 管道符
&& 前面的命令执行成功,后面的才可以执行
|| 前面的命令执行失败,后面的才可以执行
"" 会输出里面包含的变量值
'' 输出本身,里面是什么就输出什么
`` 输出执行命令结果
2>/dev/null 错误输出到无底洞
1>/dev/null 正确输出到无底洞
  1 #!/bin/bash
   echo "脚本:$0"
   echo "第一个参数是:$1"
   echo "第二个参数是:$2"
   echo "一共有多少参数:$#"
   echo "这些参数是什么:$*"

整数计算

 expr $a + $b
echo $[a + b]
echo $((a + b))

expr只能计算整数,输出的结果也是整数

浮点数计算

1. 浮点数的计算需要借助linux系统自带的bc命令

2. bc:一个简单好用的计算器

3. bc在进行计算时如果是浮点数且整数部分为0,那么整数部分不显示

4. bc命令中保留多少位小数可以通过scale,scale只对除法,取余数,乘幂 有效,对加减没有效

 echo "scale=2;(0.2+0.3)/1" | bc  #计算出0.+.3的和并保留俩位小数,此时bc计算器会省略掉个位数的0
echo "scale=2;(1.2+1.3)/1" | bc

Shell基本语法---shell的变量以及常见符号的更多相关文章

  1. shell的变量以及常见符号

    shell的变量以及常见符号 常见变量 不同于其它语言需要先声明变量,shell的变量直接使用 eg:      a=15 调用变量的话 $a 或者 ${a} $? #判断上一条命令执行的是否成功 0 ...

  2. shell学习笔记1: shell 中的变量与常见符号使用方法

    变量 声明即用 a=2 b="123" 调用 ${varName}或者 $varName echo $b echo ${a} 常见变量 $?:判断上一个语句是否成功 $0:执行脚本 ...

  3. Shell基本语法---shell脚本的输入以及脚本拥有特效地输出

    shell脚本的输入 语法:read -参数 -p:给出提示符.默认不支持"\n"换行 -s:隐藏输入的内容 -t:给出等待的时间,超时会退出read,单位是秒 -n:限制读取字符 ...

  4. Shell基本语法---shell介绍

    简介 1. shell是在linux系统上高效运行的脚本语言 2. 主要用来开发一些实用的.自动化的小工具,而不是用来开发具有复杂业务逻辑的中大型软件 3. shell的基本命令也是linux操作系统 ...

  5. Shell基本语法---shell数组

    shell数组 arr=( ) #定义数组 echo ${#arr[*]} #打印数组长度 echo ${arr[]} #打印数组的第一个成员 echo ${arr[]} #打印数组的二个成员 ech ...

  6. linux 基础-变量,shell基本语法

    变量 定义变量 your_name="runoob.com" #变量名和等号之间不能有空格 使用变量 your_name="qinjx" echo $your_ ...

  7. linux base shell 基础语法

    转载 本文主要是基础的基础,希望对大家有所帮助 一.Shell基本类型的变量: (1)Shell定义的环境变量: Shell在开始执行时就已经定义了一些和系统的工作环境有关的变量,用户还可以重新定义这 ...

  8. Shell学习小结 - 深入认识变量

    移动端访问不佳,请访问我的个人博客 变量的命名 对于初学者来说,可以简单的理解为,变量就是保存在计算机内存中的一系列的键值对. 列如: str="hello" 这里的str就是变量 ...

  9. Shell脚本语法---在Makefile等文件…

    1. Shell脚本语法 1.1. 条件测试:test [ 命令test或[可以测试一个条件是否成立,如果测试结果为真,则该命令的Exit Status为0,如果测试结果为假,则命令的Exit Sta ...

随机推荐

  1. 01-pymysql模块的安装

    1.从github 下载pymysql 安装包,下载地址为:https://github.com/PyMySQL/PyMySQL 2.解压下载文件,不用打开python交互界面,cd到解压文件所在目录 ...

  2. Kafka 学习之路(五)—— 深入理解Kafka副本机制

    一.Kafka集群 Kafka使用Zookeeper来维护集群成员(brokers)的信息.每个broker都有一个唯一标识broker.id,用于标识自己在集群中的身份,可以在配置文件server. ...

  3. vuex分模块后,如何获取state的值

    问题:vuex分模块后,一个模块如何拿到其他模块的state值,调其他模块的方法? 思路:1.通过命名空间取值--this.$store.state.car.list // OK 2.通过定义该属性的 ...

  4. 在vuejs 中使用axios不能获取属性data的解决方法

    Laravel5.4 vuejs和axios使用钩子mounted不能获取属性data的解决方法 //出错问题:在then 这个里边的赋值方法this.followed = response.data ...

  5. Spring事物管理简介 (转)

    一.事物1.什么是事物 事物指的是逻辑上的一组操作,这组操作要么全部成功,要么全部失败 2.事物的特性 原子性:事物是一个不可分割的工作单位,事物中的操作要么都发生,要么都不发生 一致性:事物前后数据 ...

  6. Java学习笔记——Socket实现文件传输

    我越是逃离,却越是靠近你. 我越是背过脸,却越是看见你. 我从你开始, 我在你结束. 需求:实现局域网下socket传输文件. 客户端步骤: 1.建立与服务器的连接 2.创建client输出流 3.创 ...

  7. Linux使用socks代理

    安装一些依赖 yum install epel-release yum install python-pip python-devel gcc gcc-c++ cmake git 安装shadowso ...

  8. 简单的 自动生成 二维码 PHP 方法

    方法一:<style type="text/css">.eweima{    width:200px; height:200px; margin:auto;}</ ...

  9. 安装Win10,ERROR_0x8007025D问题解决

    Windows10安装的时候,出现ERROR CODE:0x8007025D 大概提示为:windows 无法安装所需的文件.请确保安装所需的所有文件可用,并重新启动安装. 本人在出现这个问题的原因, ...

  10. Java第四次作业——面向对象高级特性(继承和多态)

    Java第四次作业--面向对象高级特性(继承和多态) (一)学习总结 1.学习使用思维导图对Java面向对象编程的知识点(封装.继承和多态)进行总结. 2.阅读下面程序,分析是否能编译通过?如果不能, ...