合格linux运维人员必会的30道shell编程实践题及讲解-11

企业实践题11:shell

开发shell脚本分别实现以脚本传参以及read读入的方式比较2个整数大小。以屏幕输出的方式提醒用户比较结果。bash

注意:一共是开发2个脚本。当用脚本传参以及read读入的方式须要对变量是否为数字、而且传参个数作判断。 spa

个人脚本=========================code

#read读入方式
#!/bin/bash read -p "pls input num1: " num1 read -p "pls input num2: " num2 [ -z $num1 -a -z $num2 ] && { echo "USAGE: pls input two num {num1 num2}" exit 1 } [ "`echo "$num1"|sed -r ' s#[^0-9]##g'`" = "$num1" ] || { echo "first arg must be int." exit 2 } [ "`echo "$num2"|sed -r ' s#[^0-9]##g'`" = "$num2" ] || { echo "second arg must be int." exit 3 } [ $num1 -lt $num2 ] && { echo "$num1 < $num2" } [ $num1 -gt $num2 ] && { echo "$num1 > $num2" } [ $num1 -eq $num2 ] && { echo "$num1 = $num2" }
#脚本传参方式
#!/bin/bash

[ $# -ne 2 ]&&{
  echo "USAGE: num1 num2"
  exit 1
}

[ "`echo "$1"|sed -r ' s#[^0-9]##g'`" = "$1" ]||{
  echo "first arg must be int."
  exit 2
}

[ "`echo "$2"|sed -r ' s#[^0-9]##g'`" = "$2" ]||{
  echo "second arg must be int."
  exit 2
}

[ $1 -lt $2 ]&&{
  echo "$1<$2"
  exit 0
}

[ $1 -eq $2 ]&&{
  echo "$1=$2"
  exit 0
}

[ $1 -gt $2 ]&&{
  echo "$1>$2"
  exit 0
}
相关文章
相关标签/搜索