第一个例子: 今天无意听到同事说了一个理财产品,说是只要每月定期存款1000元,年利率为10%,30年后,收获200万,很吃惊,认为不可能,于是写了一个小脚本计算了一下,事实证明,上述说法在理论上是行的通的. 脚本如下: [[email protected] tmp]# vim a.sh #!/bin/bash a=1000 for((i=1;i<=360;i++)) do b=`echo "scale=4;$a+$a*0.05/12"|bc` a=`echo "sc
#! /bin/bash # read -p '请输入数:' a //输入 read -p '请输入数:' b echo '$a+$b=' $(( a + b )) //输出 echo '$a-$b=' $(( a - b )) echo '$a*$b=' $(( a * b )) echo '$a/$b=' $(( a / b )) echo '$a%$b=' $(( a % b ))
#!/bin/bash # i=0 n=1 //定义循环变量 while [ $n -lt 101 ];do //定义循环条件 n < 101 i=$(( $i + $n )) //累加 n=$(( $n + 1 )) done echo $i 测试
#!/bin/bash if [ $# -eq 0 ]; then echo "输入值不能为空" //提示不能输入空值 注:$#代表环境变量个数 exit fi num=$* //定义一个全局变量,方便后边的调用 sum() { sum=0 while [ $# -gt 0 ] do sum=$[ $sum+$1 ] shift done echo "数字 $num 相加的和是 $sum"
bash数字计算--数字处理能力对任何一种编程语言都至关重要,可是对于bash shell脚本来说,这种能力很差,即使expr命令和$[ ]的形式也只能进行整数运算,无法完成对浮点数的运算.为了突破这种限制,引进了一种bash的浮点解决方案,就是内置bash计算器(bc) 一.bc介绍 bc实际上是一种编程语言,该语言允许在命令行输入浮点表达式,然后执行. bc可以识别(浮点)数字,变量,表达式,编程语句,函数. 可以使用bc命令从shell提示符访问bc,quit退出bc: [[email p
[[email protected] ~]# cat jiechen.sh #!/bin/bash #设计一个shell程序计算n的阶乘,要求: #1.从命令行接收参数n; #2.在程序开始后立即判断n的合法性,即是否有参数,若有是否为正整数,若非法请给错误提示. #3.最后出计算的结果 num=$1 expr $num + 1 &>/dev/null [ $? -ne 0 ] && echo "please input a number." &&
Shell脚本编程 Shell脚本变量 :这是把hostname暂时存放在CMD中通过echo能反馈出$CMD中又hostname得命令然后直接$CMD等于直接执行hostname,$在这等于变量,变量就是暂时变换成存放在CMD值中:这得NAME=zhang而执行变量是却错了,变量中只能存命令才能执行. 在变量得时候不能加空格,多个内容得加""来包括引用.而且在等号前后不能加空格,不然无法执行.:变量也可以存放文件内容,但是必须使用反向单引号 `因为看文件其实是执行了一条命令所有得使用
一.正则表达式: 正则表达式(或称Regular Expression,简称RE)就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式.该模式描述在查找文字主体时待匹配的一个或多个字符串. 正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配.简单的说,正则表示式就是处理字符串的方法,它是以行为单位来进行字符串的处理行为,正则表达式通过一些特殊符号的辅助,可以让使用者轻易的达到搜寻/删除/取代某特定字符串的处理程序.vim.grep.find.awk.sed等
七.shell中的case判断 格式: case 变量名 in value1) command ;; value2) command ;; *) commond ;; esac 在case程序中,可以在条件中使用|,表示或的意思, 比如: 2|3) command ;; 当变量为2或者3时,执行该部分命令. 应用举例: [ [email protected] shell]# cat test7.sh #!/bin/bash read -p "请输入学生的成绩: " num n1=