声明:本文仅作学习研究使用,多数语句都是为了介绍语法而构造的。

#!/bin/bash
#Filename:prameter_parctise2
#Datetime:2010_12_24 09:24
#Discription:Practise of evaluating parameters

# 等号赋值
a=879
echo "The value of \"a\" is $a."

# 使用'let'赋值
let a=16+5
echo "The value of \"a\" is now $a."
echo 'The value of \'a\' is now $a.' 
# 在'for'循环中赋值(事实上, 这是一种伪赋值):
echo -n "Values of \"a\" in the loop are: " 
#--------------------------------------------
for a in 7 8 9 11
       do
   echo -n "$a "
       done
echo 
#--------------------------------------------
#使用'read'命令进行赋值(这也是一种赋值的类型):
echo -n "Enter \"a:\" "
read a
echo "The value of \"a\" is now $a." 
#--------------------------------------------
b=$a
echo $b 
# 现在让我们来点小变化(命令替换).
c=`echo Hello!` # 把'echo'命令的结果传给变量'a'
echo $c 
c=`ls -l` # 把'ls -l'的结果赋值给'a'
echo $c      #然而, 如果没有引号的话将会删除ls结果中多余的tab和换行符.
echo "$c"   #如果加上引号的话, 那么就会保留ls结果中的空白符.
#命令替换也可以通过( )实现
R=$(cat /etc/redhat-release)
arch=$(uname -m)
echo $R; echo $arch
exit 0

进行浮点运算 
#!/bin/bash
echo -n "Inpute a:"
read a
echo -n "Input b:"
read b 
#计算a,b的乘积,包括浮点数 
c=` "scale=3;$a*$b" | bc`
echo "c=$c"
exit 0

#!/bin/bash
#Filename:parameter_replacement.sh 
#Datetime:2010_12_24 17:09 
#Discription:Replace the parameter

myfruit="pear" 
fruit=${myfruit:-apple}                                                #对于“:-":如果myfruit变量被定义过且不为空,则不传入"apple"。否则传入 
echo When myfruit is set ,fruit is :$fruit                        apple,该传是暂时的,非永久性

unset myfruit 
fruit=${myfruit:-apple} 
echo When myfruit is unset,fruit is :$fruit

unset var_x
echo When var_x is unset,var_x is :$var_x              #对于":=",如果var_x变量未被定义过或为空,则将var_x赋值为"shala"。否则 
echo Now var_x is: ${var_x:=shala}                             将var_x变量将保留他原本的值。该赋值为永久性的,非暂时性的 
echo Now var_x is: ${var_x:=banana}

unset var_x 
echo ${var_x:+"aoyun beijing"}                                #对于":+",如果var_x变量未被定义或为空,则不传入"aoyun beijing"。如果 
var_x="beijing 2008"                                                     var_x被定义过, 则传入"aoyun beijing",该传是暂时的,非永久性 
echo ${var_x:+"aoyun beijing"} 
echo var_x is:$var_x

exit 0

参考至:http://club.topsage.com/viewthread.PHP?tid=668357&highlight=shell

本文原创,转载请注明出处、作者

如有错误,欢迎指正

邮箱:czmcj@163.com

作者:czmmiao 原文地址:http://czmmiao.iteye.com/blog/911373

Shell学习笔记---变量赋值与运算(原创)相关推荐

  1. shell学习笔记3---awk的执行过程(原创)

    awk_script的组成 1.awk_script可以由一条或多条awk_cmd组成,两条awk_cmd之间一般以NEWLINE分隔 2.awk_cmd由两部分组成: awk_pattern { a ...

  2. 日常python学习笔记DAY 8---集合运算(交集、并集、超集和差集)

    日常python学习笔记DAY 8-集合运算(交集.并集.超集和差集) ''' 集合的运算有交并超差以及堆成差集合 ''' #求交集 & .intersection() .intersecti ...

  3. shell学习笔记 (2)

    shell学习笔记 (2) ---china.pub.com  linux shell电子书学习笔记 第2章 使用find和xargs find pathname -options [-print - ...

  4. 抽象代数学习笔记(5) 运算

    抽象代数学习笔记(5)运算 "运算"这个名词大家从小学就应该接触了,比如"四则运算"等等.不过在那个时候,运算一直是一个很模糊的概念,究竟什么是运算?我们接触的 ...

  5. Linux shell 学习笔记(4)— linux 环境变量(全局变量、局部变量及变量持久化)

    1. 环境变量概念及分类 bash shell 用一个叫作环境变量(environment variable)的特性来存储有关 shell 会话和工作环境的信息(这也是它们被称作环境变量的原因).这项 ...

  6. linux shell学习笔记(二) 变量和运算符

    1.什么是shell变量?本地变量.环境变量.变量替换(显示变量).位置变量.标准变量.特殊变量.影响变量的命令 2.本地变量:本地变量在用户现在的shell生命期的脚本中使用 variable-na ...

  7. shell学习笔记整理

    Shell编程学习笔记 第一章基础知识 1.脚本格式: 1.1"#!" 这个符号的名称,叫做"Shebang"或者"Sha-bang" &q ...

  8. [Bash Shell] Shell学习笔记

    1. Shell简介 Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的.Shell既是一种命令语言,又是一种程序设计语言.作为命 ...

  9. python 赋值_python编程自学笔记变量赋值数据类型格式化输出

    python编程自学笔记变量数赋值据类型格式化输出 Python自学笔记 变量 数据类型 字符串 格式化 1.变量 变量的定义 给变量赋值 name是一个变量,把"***"赋值给了 ...

最新文章

  1. 修改所有列_多人编辑,自动汇总,领导可见所有?用 SeaTable 表格更简单
  2. 实战SSM_O2O商铺_15【商铺注册】View层+Controller层之图片上传
  3. python 递归函数_连载|想用Python做自动化测试?递归函数
  4. php每个月头一天与最后一天,PHP获取每月第一天与最后一天
  5. lwuit ---一些细节疑难杂症整理笔记
  6. 计算机网络PIC和SDV,SRBSDV和RBSDV检测技术的建立
  7. unity怎么做水面_防水博士小课堂 | 什么是背水面防水? 背水面防水施工到底该怎么做?...
  8. java面向对象(引用类型--参数传递)
  9. 上海药物所揭示KRAS突变肿瘤的分子分型和精准治疗新策略
  10. 分布式日志收集系统: Facebook Scribe之配置文件
  11. envi图像裁剪_【ENVI基础】如何进行水体提取?
  12. 均方根误差RMSE 均方根值(RMS)+ 均方根误差(RMSE)+标准差(Standard Deviation)
  13. linux语言 ctrl命令,linux下Ctrl命令组合
  14. PHP 高并发秒杀解决方案
  15. vue引入企业微信JS-SDK;企业微信开发步骤;vue开发企业微信;企业微信侧边栏应用开发
  16. 数学表达式Round2
  17. 互联网晚报 | 9月16日星期五 | ​B站回应诉争“哔哩哔哩”商标被驳回;​苹果占国内高端机70%份额;​蔚来手机被曝明年发布...
  18. c语言如何编程出声音,C语言播放声音最简单的两种方法
  19. 干货分享:今天谈谈大学生该如何运营校园微信公众号!
  20. 共享单车背后还隐藏着多少惊天秘密?

热门文章

  1. Oracle的回收站和闪回查询机制(二)
  2. android 阅读器上下滑动_科研党利器——文石13.3寸墨水屏阅读器BOOX Max3
  3. flash(as3.0)在线聊天室
  4. Wanna Be a Pragmatic Programmer
  5. RN与原生交互(二)——数据传递
  6. ORACLE报错:enviroment variable ORACLE_SID not defined,please define int
  7. wikioi 1306 机智Trie树
  8. android 获取view在屏幕中的位置
  9. 安卓真机测试遇到的检测不到安卓设备的问题
  10. 什么是9.png,如何制作,如何使用。