is_upper()
# is_upper
# checks tosee if we have a string in upper case
# to call: is_upper $1
{
# check we have the right params
if [ $# -ne 1 ]; then
echo "is_upper: I need a string to test OK"
return 1
fi
# use awk to check we have only uppercase
_IS_UPPER=`echo $1|awk '{if($0~/[^A-Z]/) print "1"}'`
if [ "$_IS_UPPER" != "" ]
then
# no, they are not all uppercase
return 1
else
# yes all uppercase
return 0
fi
}
#_IS_UPPER=`echo $1|awk '{if($0~/[^A-Z]/) print "1"}'`
这句的“ ~ ”表示匹配一个正则表达式,[^A-Z]表示A-Z以外的字符
所以这句话的意思是如果第一参数中出现了任意一个A-Z以外的字符(即不全是大写英文字母),则打印"1"
所以这句话的意思是如果第一参数中出现了任意一个A-Z以外的字符(即不全是大写英文字母),则打印"1"