shell计算机
整数计算机工具:
1.exper
参与运算的整数值与运算操作符之间,
需要以空格分开,引用变量时必须加$符号。
例:exper 1 + 1
exper $ARNDOM %9 随机函数取9以下的随机整数
2.$[]或$(()) 不要空格分开,引用变量时不用加$符号。 例:$[1+1]
3.let 可以直接对变量做运算再保存新的值,并不显示。 例:x=123 let x+=78等于(x=x+78)的简写
小数运算工具: 1.bc 交互运算 bc就可进入bc运算模式
while循环 格式: while 条件(条件成立才执行命令序列) do 命令序列 done 例1:while :(:代表死循环) do echo "你好" done
例2: I=0 B=1 while [ $B -le 100 ] do ((I+=B)) let B++ done echo $I
for循环 格式: for 变量名 in 值列表 do 命令序列 done 例:for i in 1 2 3(循环三次) do echo "你好" done
列2: #!/bin/bash for((i=1;i<=5;i++)) do echo $RANDOM|md5sum|cut -c 1-8|tr "[0-9]" "[A-z]" done
if判断
格式:
if [ ];then (中括号里写判断,然后要两边加空格,
条件满足执行命令序列,不满足执行else的命令序列)
命令序列
elif [ ];then (同上)
命令序列
else
命令序列
fi
例:if [ $1=="natasha" ];then
echo "chiheirou"
elif [ $1=="chiheirou" ];then
echo "natasha"
else
echo "请在natasha和chiheirou中二选一"
fi
中断循环及退出: break 可以结束整个循环 continue 结束本次循环(当前这一次) exit 结束整个脚本
case判断(if的阉割版) 模式里不能再判断 格式: case 变量名 in 模式1) 命令序列 模式2) 命令序列 ..... *) 默认命令序列 esac 例:case $1 in xixi) echo "111xixi111" haha) echo "111haha111" ..... esac