玩转变量、环境变量以及数学运算(shell)
变量和环境变量
var=value 给变量赋值,输出语句:$ echo $var或者是$ echo ${var},记住中间有个空格
例如:name="coffee" age="20" $echo "我的名字是:${name},年龄是:${age}" 在输出语句echo中可以在双引号中使用变量,但是如果是单引号那么变量不会扩展得到定义的值。

获取字符串的长度:${#var}
//例如:
name="yy" $echo ${#name}
//输出的结果为2。
$0或者是$SHELL 可以获取当前使用的是那种shell,注意:shell所有字母必须都是大写的
export命令设置环境变量,至此之后,当前的shell脚本都会继承这个变量值,
一些常用的环境变量:HOME PWD USER UID SHELL
UID:检查当前脚本用户身份,root用户的UID是0
SHELL:当前shell的类型
数学运算
let命令简单的算术操作,使用时变量名之前可不需要添加$
实例如下图:

自加操作:$ let one++
自减操作:$ let two--
也可以这样简写:$ let one+=2 $ let two-=1分别等同于$ let one = one + 2和$ let two = two - 1
操作符[]也有和let命令类似作用

也可以使用(()),但是需要注意变量名之前需要加上$,否则会出错。

以上方法只适合与整数之间的运算,不支持小数。
现实生活没有小数那几乎是不可能的,当然了shell也不会那么的简单,bc命令就是一个数学运算高级工具,它可执行浮点数运算并应用一些高级函数:

设定小数的精度scale命令,在对于乘法(*)运算时没有效果

进制之间转换obase(输出的进制)和ibase(输入的进制)命令

计算平方、平方根sqrt命令

注意:上图中如果不能够平方根的那么结果得到的是比原值都小中的最大值
玩转变量、环境变量以及数学运算(shell)的更多相关文章
- Linux 下Shell变量,环境变量的联系与区别
Linux下Shell变量,环境变量的联系与区别 by:授客 QQ:1033553122 1. 简介 linux下的变量可分成两种:Shell变量和环境变量. Shell变量,又称本地变量,包括私有 ...
- [Shell]Bash变量:自定义变量 & 环境变量 & 位置参数变量 & 预定义变量
--------------------------------------------------------------------------------- 变量是计算机内存的单元,其中存放的值 ...
- .NET Core采用的全新配置系统[5]: 聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数]
较之传统通过App.config和Web.config这两个XML文件承载的配置系统,.NET Core采用的这个全新的配置模型的最大一个优势就是针对多种不同配置源的支持.我们可以将内存变量.命令行参 ...
- 跟我一起写Makefile--- 变量(嵌套变量+追加变量+overrid+多行变量+环境变量+目标变量+模式变量)
目录(?)[-] 使用变量 一变量的基础 二变量中的变量 三变量高级用法 四追加变量值 五override 指示符 六多行变量 七环境变量 八目标变量 九模式变量 使用变量 ———— 在Makefil ...
- java 获取系统变量(环境变量和设置变量)
前言 环境变量这个概念不陌生, 就是操作系统的环境变量. 系统变量就是java本身维护的变量. 通过 System.getProperty 的方式获取. 对于不同的操作系统来说, 环境变量的处理可能会 ...
- java 获取系统变量(环境变量和环境变量)
前言 环境变量这个概念不陌生, 就是操作系统的环境变量. 系统变量就是java本身维护的变量. 通过 System.getProperty 的方式获取. 对于不同的操作系统来说. 环境变量的处理可能会 ...
- 管道符和作业 shell变量 环境变量
管道符 | 前一个命令的输出,变成后一个命令的输入 ctrl +z 暂停 bg cmd 后台运行 fg # 调回前台 直接让程序进入后台,可以在后面加上 cmd &am ...
- 管道符和作业控制 shell变量 环境变量配置文件
8.6 管道符和作业控制 8.7/8.8 shell变量 8.9 环境变量配置文件 管道符和作业控制 管道符:表示把一个文件的输出内容传送到后面的命令 grep 用来过滤指定关键词的命令 “|” 为 ...
- shell变量/环境变量和set/env/export用法_转
转自:shell环境变量以及set,env,export的区别 一.shell环境变量的分类以及set env export的区别: set:显示(设置)shell变量,包括的私有变量以及用户变量.不 ...
随机推荐
- Windows下配置cygwin和ndk编译环境
cygwin安装 正确的安装步骤其实很简单:1. 下载setup-86_64.exe 2. 直接从网上下载安装,选择包时,顶部选择“default”不变 3. 搜索make,勾选make,cmake, ...
- myeclipse安装
http://www.cnol.cc/2013/1427.html(我用这个) http://www.myeclipseide.cn/windows.html http://download.csdn ...
- Javascript中的Keycode值列表
关于如何得到一个键在Javascript中的Keycode值,可以参考: <body onkeypress=alert(event.keyCode)>请按任意键,你将得到该键的键值! ke ...
- hdu 1969(二分)
题意:给了你n个蛋糕,然后分给m+1个人,问每个人所能得到的最大体积的蛋糕,每个人的蛋糕必须是属于同一块蛋糕的! 分析:浮点型二分,二分最后的结果即可,这里要注意圆周率的精度问题! #include& ...
- CDB和PDB基本管理
CDB和PDB基本管理 这篇文章主要介绍CDB和PDB的基本管理,资料来源oracle官方. 基本概念: Multitenant Environment:多租户环境 CDB(Container Dat ...
- 生产环境服务CPU高问题分析
问题描述: 现网个别时候会出现CPU突然飙高的现象,飙高后不能恢复正常. 分析过程: CPU飙高后抓dump,最好本机看,其它机器看dump可能需要下载服务运行机器的sos,clr 0:000 ...
- 查找指定目录下的文件 .xml
pre{ line-height:1; color:#9f1d66; background-color:#cfe4e4; font-size:16px;}.sysFunc{color:#5d57ff; ...
- 状态管理cookie 案例
1状态管理:服务器为了追踪同一个客户端发出的请求,将多次交互看成一个整体看待 2:cookie的生存时间,默认情况下,cookie保存在浏览器内存中,只要不关闭浏览器,cookie就一直存在 如果希望 ...
- java中子类与基类变量间的赋值
Java中子类与基类变量间的赋值 子类对象可以直接赋给基类变量. 基类对象要赋给子类对象变量,必须执行类型转换, 其语法是: 子类对象变量=(子类名)基类对象名; 也不能乱转换.如果类型转换失败Jav ...
- ps 图片提取线稿方法2种 转