#shell的数加减乘除
#使用expr要保持空格
#计算3 -2
expr 3 - 2
#(2*3)*12
expr `expr 2 \* 3` \* 12
#72/6
expr 72 / 6
#使用$的方法
s=$[(2+4)*6]

shell学习日记2_bash


特殊变量$的各个符号意义如下

$?:上条命令的返回值

$#:参数个数

$*:参数列表

shell学习日记2_for循环_02*相反)

$0-n:$0:脚本名

shell学习日记2_bash_03n:第n个参数

获取10以上的参数 ${n}

#! /bin/bash
echo hello+$1
B=$1
#输出第一个参数
echo $1
#输出第二个参数
echo $2
#输出上一条命令的返回值 成功为0
echo $?
#输出参数的个数
echo $#
#输出参数列表
echo $*

shell学习日记2_for循环_04

#bash的判断
#-lt 小于 -ge 大于等于 -eq等于 -ge大于等于 -gt 大于 -le小于等于 -ne不等于
#!/bin/bash
for i in $*
do
if [ $i -gt 7 ]
then
echo "大于7"
elif [ $i -le 6 ]
then
echo "小于等于6"
else echo "等于7"
fi
done

shell学习日记2_软连接_05

#文件类型的判断 -f 存在且为普通文件 -e 文件存在 -s 文件存在且非空 -d 文件存在且为目录 -L 文件存在且为链接
#不存在该文件
[ -e /root/shellfile/100.sh ]
#存在该目录
[ -d /root/shellfile/ ]
#不存在该软连接
[ -L /root/shellfile/lg.txt ]
#存在且非空
[ -s /root/shellfile/lg.txt ]

shell学习日记2_bash_06


for循环在case语句中不需要加fi

#case语句
#!/bin/bash
for i in $*
do
case $i in
"1")
echo "男"
;;
"0")
echo "女"
;;
esac
done

shell学习日记2_软连接_07