shell编程---字符测试及for循环
一.字符测试
==:测试是否相等,相等为真,不等为假
!=: 测试是否不等,不等为真,等为假
>
<
-n string: 测试指定字符串是否为空,空则真,不空则假
-z string: 测试指定字符串是否不空,不空为真,空则为假
[ $username == $useername1 ] 等号两端必须要有空格
1.bc
echo "scale=2;111/22;" | bc 计算两个数的保留两位小数
练习:写一个脚本
传递一个参数(单字符就行)给脚本,如参数为q、Q、quit或Quit,就退出脚本;否则,就显示用户的参数;
#!/bin/bash
#
if [ $1 = ‘q‘ ];then
echo "Quiting..."
exit 1
elif [ $1 = ‘Q‘ ];then
echo "Quiting..."
exit 2
elif [ $1 = ‘quit‘ ];then
echo "Quiting..."
exit 3
elif [ $1 = ‘Quit‘ ];then
echo "Quiting..."
exit 4
else
echo $1
fi
2.for循环
for I in {1...10}; do
加法运算
done
写一个脚本:
计算100以内所有奇数的和以及所有偶数的和,分别显示之
#/bin/bash
#
declare -i oddsum=0
declare -i evensum=0
declare -i s
for I in {1..100};do
let s=$[$I%2]
if [ $s -eq 0 ];then
let oddsum=$[$oddsum+$I]
elif [ $s -eq 1 ];then
let evensum=$[$evensum+$I]
fi
done
echo ${oddsum}---${evensum}
组合测试条件
-a: 与关系
-o: 或关系
!: 非关系
if [ $# -gt 1 -a $# -le 3 ]
if [ $# -gt 1 ] && [ $# -le 3 ]
本文出自 “珞辰的博客” 博客,请务必保留此出处http://luochen2015.blog.51cto.com/9772274/1637233
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。