shell 脚本语言

1 test 命令

1.1 数值测试
  • -eq >>> 等于则为真
  • -ne >>> 不等于则为真
  • -gt >>> 大于则为真
  • -ge >>> 大于等于则为真
  • -lt >>> 小于则为真
  • -le >>> 小于等于则为真
#!/bin/bash
read -p "please input your num1:" num1
read -p "please input your num2:" num2
test $num1 -eq $num2 && echo "=" || echo "!="

1.2 文件测试

  • -e 文件名 >>> 如果文件存在则为真
  • -r 文件名 >>> 如果文件存在且可读则为真
  • -w 文件名 >>> 如果文件存在且可写则为真
  • -x 文件名 >>> 如果文件存在且可执行则为真
  • -s 文件名 >>> 如果文件存在且至少有一个字符则为真
  • -d 文件名 >>> 如果文件存在且为目录则为真
  • -f 文件名 >>> 如果文件存在且为普通文件则为真
  • -c 文件名 >>> 如果文件存在且为字符型特殊文件则为真
  • -b 文件名 >>> 如果文件存在且为块特殊文件则为真
#!/bin/bash
read -p "please input name of file:" filename
test -e $filename && echo "file exist" || "file not eaist"

1.3 字符串测试

  • = >>> 等于则为真
  • != >>> 不相等则为真
  • -z 字符串 >>> 字符串的长度为零则为真
  • -n 字符串 >>> 字符串的长度不为零则为真
#!/bin/bash
read -p "input first string:" first
read -p "input second string:" second
test $first == $second  && echo "==" || eho "!="

2 条件判断

#!/bin/bash

read -p "please input Y/N" value

if [ "$value" == "Y" ] ||  [ "$value" == "y" ]; then
	echo "your input is Y"
	exit 0
fi

if [ "$value" == "N" ] ||  [ "$value" == "n" ]; then
	echo "your input is N"
	exit 0
fi
#!/bin/bash

read -p "please input Y/N" value

if [ "$value" == "Y" ] ||  [ "$value" == "y" ]; then
	echo "your input is Y"
	exit 0
fi

elif [ "$value" == "N" ] ||  [ "$value" == "n" ]; then
	echo "your input is N"
	exit 0
else 
	echo "your input is illegal"

fi
#!/bin/bash

case $1 in
	"a")
		 echo "param is a"
		 ;;
	"b")
		 echo "param is b"
		 ;;
	*)
		echo "illegal!"
		;;
esac

3 函数

#!/bin/bash

function help(){
	echo "this is help cmd"
}

function close(){
	echo "this is close cmd"
}

case $1 in
	"-h")
		help
		;;
	"-c")
		close
		;;
	*)
		echo "error!"
		;;
esac
#!/bin/bash

print(){
	echo "param 1:$1"
	echo "param 2:$2"
}

print a b

3 shell循环语句

while 【条件】
do
//循环体
done

until【条件】
do
//循环体
done

for var in cond1 cond2 cond3
do
//循环体
done

for ((初始值;限制值;步长))
do
//循环体
done

#!/bin/bash

read -p "input count:" count

for((i=0;i<=count;i=i+1))
do
	total=$(($count+$i))
done
ech0 "1+2+...+$count=$total"
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值