玩转变量、环境变量以及数学运算(shell)

变量和环境变量   

var=value  给变量赋值,输出语句:$ echo $var或者是$ echo ${var},记住中间有个空格

例如:name="coffee" age="20" $echo "我的名字是:${name},年龄是:${age}" 在输出语句echo中可以在双引号中使用变量,但是如果是单引号那么变量不会扩展得到定义的值。

获取字符串的长度:${#var}

1 //例如:
2 name="yy" $echo ${#name}
3 //输出的结果为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命令

注意:上图中如果不能够平方根的那么结果得到的是比原值都小中的最大值

时间: 2024-11-08 18:54:36

玩转变量、环境变量以及数学运算(shell)的相关文章

聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数]

聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数] 较之传统通过App.config和Web.config这两个XML文件承载的配置系统,.NET Core采用的这个全新的配置模型的最大一个优势就是针对多种不同配置源的支持.我们可以将内存变量.命令行参数.环境变量和物理文件作为原始配置数据的来源,如果采用物理文件作为配置源,我们可以选择不同的格式(比如XML.JSON和INI等) .如果这些默认支持的配置源形式还不能满足你的需求,我们还可以通过注册自定义ConfigurationSour

java 获取系统变量(环境变量和设置变量)

前言 环境变量这个概念不陌生, 就是操作系统的环境变量. 系统变量就是java本身维护的变量. 通过 System.getProperty 的方式获取. 对于不同的操作系统来说, 环境变量的处理可能会有一些不统一的地方, 比方说: 不区分大写和小写 等等. Java 获取环境变量 Java 获取环境变量的方式非常easy: System.getEnv()  得到全部的环境变量 System.getEnv(key) 得到某个环境变量的值 Map map = System.getenv(); Ite

.NET Core采用的全新配置系统[5]: 聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数]

较之传统通过App.config和Web.config这两个XML文件承载的配置系统,.NET Core采用的这个全新的配置模型的最大一个优势就是针对多种不同配置源的支持.我们可以将内存变量.命令行参数.环境变量和物理文件作为原始配置数据的来源,如果采用物理文件作为配置源,我们可以选择不同的格式(比如XML.JSON和INI等) .如果这些默认支持的配置源形式还不能满足你的需求,我们还可以通过注册自定义ConfigurationSource的方式将其他形式数据作为我们的配置来源. [ 本文已经同

shell变量/环境变量和set/env/export用法_转

转自:shell环境变量以及set,env,export的区别 一.shell环境变量的分类以及set env export的区别: set:显示(设置)shell变量,包括的私有变量以及用户变量.不同类的shell有不同的私有变量 bash,ksh,csh每中shell私有变量都不一样. env:显示(设置)用户变量变量. export:显示(设置)当前导出成用户变量的shell变量. export 显示当前导出成用户变量的shell变量,并显示变量的属性(是否只读),按变量名称排序: dec

管道符和作业控制 shell变量 环境变量配置文件

8.6 管道符和作业控制 管道符的作用在于将符号前面的结果丢给符号后面的命令.管道符后面并不是所有的命令都可以,一般针对文档操作的命令比较常用,eg:cat.less.head.tail.grep.cut.sort.wc.uniq.tee.tr.split.sed.awk等等. cat 1.txt | wc -l ;cat 1.txt |grep 'aaa'ctrl z 暂停一个任务 //把暂停的任务调回来用fg//jobs查看后台的任务bg[id]把任务调到前台 //丢到后台并运行//命令后面

linux下环境变量详解

玩Linux也很久了,竟然对环境变量的了解不是很系统,今天就学习下. 参考: www.xuexuhui.blog.51cto.com ================================ Linux是一个多用户的操作系统.每个用户登录系统后,都会有一个专用的运行环境.通常 每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义.用户可以 对自己的运行环境进行定制,其方法就是修改相应的系统环境变量. 常见的环境变量 对于PATH和HOME等环境变量大家都不陌生.除此之外

dos命令-环境变量-数据类型-命名规范

JAVA第一天笔记--dos命令-环境变量-数据类型-命名规范 1.能够阐述JDK和JRE之间区别 JDK(Java Development Kit)是提供给开发人员使用的JAVA开发工具包(javac.exe;java.exe),包含JRE(Java Runtime Environment). JRE(Java Runtime Environment)是Java程序运行环境,包含JVM(Java Virtual Machine)及核心类库. 总结为:开发人员使用JDK开发的程序,在JRE中运行

环境变量配置

环境变量配置作为学习java的第一步,虽然没什么特殊,但是也不可马虎,否则你的第一行输出的代码可能不是Hello World,而是Hello Bug! 环境变量配置主要有四步: 注:系统变量配置窗口:“计算机”右键“属性”--“高级系统变量”--“环境变量”,打开就是配置系统变量配置窗口 ① 新增系统变量JAVA_HOME JAVA_HOME,就是JDK的安装目录,比如我的安装目录是E:\Develop kit\Java\jdk1.8.0_73,则配置如下 ② 追加path变量 在系统变量pat

什么是环境变量

环境变量 环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等. 环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息.例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找.用户通过设置环境变量,来更好的运行进程. 中文名 环境变量 外文名