24cun_cn 发表于 2018-8-23 08:44:17

shell实例(一)

  shell实例(一)

[*]  实例一:
  等于 -eq   (equal)
  不相等 -ne (not equal)
  大于 -gt   (greater than)
  小于 -lt(less than)
  大于或等于 -ge (greater than or equal)
  小于或等于 -le (less than or equal)
  举例如下:
  #!/bin/bash
  d=`date`
  echo $d
  a=1
  if [ $a -lt 3 ] ==if (($a < 3))
  then
  echo "this is ok"
  fi
  结果截图如下:


[*]  实例二:
  判断输入的数字是偶数还是奇数
  #!/bin/bash
  read -p "请输入一个数字:" n
  n1=$[$n%2]
  if [ $n1 -eq 0 ]
  then
  echo "输入的数字是偶数"
  else
  echo "输入的数字是奇数"
  fi


[*]  实例三:对上例扩展,如果输入的不是纯数字,该怎么做?
  #!/bin/bash
  read -p "请输入一个数字:" n
  n2=`echo $n|grep -c '[^0-9]'`
  if [ $n2 -eq 1 ]
  then
  echo "你输入的不是纯数字,请重新输入"
  exit 1
  fi
  n1=$[$n%2]
  if [ $n1 -eq 0 ]
  then
  echo "你输入的数字是偶数"
  else
  echo "你输入的数字是奇数"
  fi
  注:当你 exit 0 的时候,在调用环境 echo $? 就返回0,也就是说调用环境就认为你的这个程序执行正确;当你 exit 1 的时候,一般是出错定义这个1,也可以是其他数字,很多系统程序这个错误编号是有约定的含义的。 但不为0 就表示程序运行出错。 调用环境就可以根据这个返回值判断 你这个程序运行是否ok。


[*]  实例四:
  #if [ -e 1.sh ];then echo “1.sh exist”;fi == #[ -e 1.sh ] && echo “1.sh exist”


[*]  实例五:
  #!/bin/bash
  d=`date +%F`
  exec > /tmp/$d.log 2>&1 【&1代表tmp/$d.log】
  echo "begin at `date`"
  ls /tmp/sdade
  cd /shdwduw/
  echo "end at `date`"


页: [1]
查看完整版本: shell实例(一)