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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了合格linux运维人员必会的30道shell编程面试题及讲解-11相关的知识,希望对你有一定的参考价值。

企业面试题11:

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

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

我的脚本=========================

#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
}

 


以上是关于合格linux运维人员必会的30道shell编程面试题及讲解-11的主要内容,如果未能解决你的问题,请参考以下文章

合格linux运维人员必会的30道shell编程面试题及讲解

合格linux运维人员必会的30道shell编程面试题及讲解

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

Python练习28

Python练习28

Python练习10