Shell基本语法---shell的变量以及常见符号
变量
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的变量以及常见符号的更多相关文章
- shell的变量以及常见符号
shell的变量以及常见符号 常见变量 不同于其它语言需要先声明变量,shell的变量直接使用 eg: a=15 调用变量的话 $a 或者 ${a} $? #判断上一条命令执行的是否成功 0 ...
- shell学习笔记1: shell 中的变量与常见符号使用方法
变量 声明即用 a=2 b="123" 调用 ${varName}或者 $varName echo $b echo ${a} 常见变量 $?:判断上一个语句是否成功 $0:执行脚本 ...
- Shell基本语法---shell脚本的输入以及脚本拥有特效地输出
shell脚本的输入 语法:read -参数 -p:给出提示符.默认不支持"\n"换行 -s:隐藏输入的内容 -t:给出等待的时间,超时会退出read,单位是秒 -n:限制读取字符 ...
- Shell基本语法---shell介绍
简介 1. shell是在linux系统上高效运行的脚本语言 2. 主要用来开发一些实用的.自动化的小工具,而不是用来开发具有复杂业务逻辑的中大型软件 3. shell的基本命令也是linux操作系统 ...
- Shell基本语法---shell数组
shell数组 arr=( ) #定义数组 echo ${#arr[*]} #打印数组长度 echo ${arr[]} #打印数组的第一个成员 echo ${arr[]} #打印数组的二个成员 ech ...
- linux 基础-变量,shell基本语法
变量 定义变量 your_name="runoob.com" #变量名和等号之间不能有空格 使用变量 your_name="qinjx" echo $your_ ...
- linux base shell 基础语法
转载 本文主要是基础的基础,希望对大家有所帮助 一.Shell基本类型的变量: (1)Shell定义的环境变量: Shell在开始执行时就已经定义了一些和系统的工作环境有关的变量,用户还可以重新定义这 ...
- Shell学习小结 - 深入认识变量
移动端访问不佳,请访问我的个人博客 变量的命名 对于初学者来说,可以简单的理解为,变量就是保存在计算机内存中的一系列的键值对. 列如: str="hello" 这里的str就是变量 ...
- Shell脚本语法---在Makefile等文件…
1. Shell脚本语法 1.1. 条件测试:test [ 命令test或[可以测试一个条件是否成立,如果测试结果为真,则该命令的Exit Status为0,如果测试结果为假,则命令的Exit Sta ...
随机推荐
- 01-pymysql模块的安装
1.从github 下载pymysql 安装包,下载地址为:https://github.com/PyMySQL/PyMySQL 2.解压下载文件,不用打开python交互界面,cd到解压文件所在目录 ...
- Kafka 学习之路(五)—— 深入理解Kafka副本机制
一.Kafka集群 Kafka使用Zookeeper来维护集群成员(brokers)的信息.每个broker都有一个唯一标识broker.id,用于标识自己在集群中的身份,可以在配置文件server. ...
- vuex分模块后,如何获取state的值
问题:vuex分模块后,一个模块如何拿到其他模块的state值,调其他模块的方法? 思路:1.通过命名空间取值--this.$store.state.car.list // OK 2.通过定义该属性的 ...
- 在vuejs 中使用axios不能获取属性data的解决方法
Laravel5.4 vuejs和axios使用钩子mounted不能获取属性data的解决方法 //出错问题:在then 这个里边的赋值方法this.followed = response.data ...
- Spring事物管理简介 (转)
一.事物1.什么是事物 事物指的是逻辑上的一组操作,这组操作要么全部成功,要么全部失败 2.事物的特性 原子性:事物是一个不可分割的工作单位,事物中的操作要么都发生,要么都不发生 一致性:事物前后数据 ...
- Java学习笔记——Socket实现文件传输
我越是逃离,却越是靠近你. 我越是背过脸,却越是看见你. 我从你开始, 我在你结束. 需求:实现局域网下socket传输文件. 客户端步骤: 1.建立与服务器的连接 2.创建client输出流 3.创 ...
- Linux使用socks代理
安装一些依赖 yum install epel-release yum install python-pip python-devel gcc gcc-c++ cmake git 安装shadowso ...
- 简单的 自动生成 二维码 PHP 方法
方法一:<style type="text/css">.eweima{ width:200px; height:200px; margin:auto;}</ ...
- 安装Win10,ERROR_0x8007025D问题解决
Windows10安装的时候,出现ERROR CODE:0x8007025D 大概提示为:windows 无法安装所需的文件.请确保安装所需的所有文件可用,并重新启动安装. 本人在出现这个问题的原因, ...
- Java第四次作业——面向对象高级特性(继承和多态)
Java第四次作业--面向对象高级特性(继承和多态) (一)学习总结 1.学习使用思维导图对Java面向对象编程的知识点(封装.继承和多态)进行总结. 2.阅读下面程序,分析是否能编译通过?如果不能, ...