#!/bin/bash #案例1:定义变量A A=100 #输出变量需要加上$ echo A=$A echo "A=$A" #案例2:撤销变量A unset A echo "A=$A" #案例3:声明静态的变量B=2,不能unset readonly B=2 echo "B=$B" #unset B #将指令返回的结果赋给变量 :<<! C=`date` D=$(date) echo "C=$C" echo "D=$D" !
#!/bin/bash echo "0=$0 1=$1 2=$2" echo "所有的参数=$*" echo "$@" echo "参数的个数=$#"
#!/bin/bash #案例1:计算(2+3)X4的值 #使用第一种方式 RES1=$(((2+3)*4)) echo "res1=$RES1" #使用第二种方式, 推荐使用 RES2=$[(2+3)*4] echo "res2=$RES2" #案例2:请求出命令行的两个参数[整数]的和 20 50 SUM=$[$1+$2] echo "sum=$SUM"
#!/bin/bash #"ok"是否等于"ok" #用= if [ "ok"="ok" ] then echo "equal" fi #23是否大于等于22 if [ 23 -ge 22 ] then echo "大于" fi # 判断/mnt/c/Users/丁帅帅/Desktop/test目录中是否存在aaa.txt # 判断语句:使用 -f if [ -f /mnt/c/Users/丁帅帅/Desktop/test/aaa.txt ] then echo "存在" fi
注意空格
#案例:请编写一个shell程序,如果输入的参数,大于等于60,则输出 "及格了",如果小于60,则输出 "不及格" if [ $1 -ge 60 ] then echo "及格了" elif [ $1 -lt 60 ] then echo "不及格" fi
#!/bin/bash #案例1 :当命令行参数是 1 时,输出 "周一", 是2 时,就输出"周二", 其它情况输出 "other" case $1 in "1") echo "周一" ;; "2") echo "周二" ;; *) echo "other..." ;; esac
#!/bin/bash #打印命令行输入的参数 for i in "$*" do echo "num is $i" done echo "++++++++++++++++++++++++++" for i in "$@" do echo "num is $i" done for i in 1 3 4 6 8 9 do echo "$i" done
#!/bin/bash #从1加到n SUM=0; for(( i=1; i<= $1; ++i)) do SUM=$[$SUM+$i] done echo "总和SUM=$SUM"
#!/bin/bash #从1加到n SUM=0 i=0 while [ $i -le $1 ] do SUM=$[$SUM+$i] i=$[$i+1] done echo "执行结果=$SUM"
#!/bin/bash #案例1:读取控制台输入一个NUM1值 read -p "请输入一个数NUM1=" NUM1 echo "你输入的NUM1=$NUM1"
#!/bin/bash # 计算输入两个参数的和 #定义函数 function getSum() { SUM=$[$n1+$n2] echo "和是=$SUM" } #输入两个值 read -p "请输入一个数n1=" n1 read -p "请输入一个数n2=" n2 #调用自定义函数 getSum $n1 $n2