Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > b611ea73723a8287cce23d3124a6eeea > files > 131

howto-sgml-ko-2006-5mdv2010.0.noarch.rpm

#!/bin/bash
# assert.sh

assert ()                 #  Á¶°ÇÀÌ °ÅÁþÀ̶ó¸é,
{                         #+ ¿¡·¯ ¸Þ¼¼Áö¸¦ ³»°í ½ºÅ©¸³Æ®¸¦ Á¾·á.
  E_PARAM_ERR=98
  E_ASSERT_FAILED=99


  if [ -z "$2" ]          # ¸Å°³º¯¼ö°¡ ¸Â°Ô ³Ñ¾î¿ÀÁö ¾Ê¾ÒÀ½.
  then
    return $E_PARAM_ERR   # ±×³É ³Ñ¾î°¨.
  fi

  lineno=$2

  if [ ! $1 ] 
  then
    echo "Assertion failed:  \"$1\""
    echo "File $0, line $lineno"
    exit $E_ASSERT_FAILED
  # else
  #   return
  #   ½ºÅ©¸³Æ®¸¦ °è¼Ó ½ÇÇà½ÃÅ´.
  fi  
}    


a=5
b=4
condition="$a -lt $b"     # ¿¡·¯ ¸Þ¼¼Áö¸¦ ³»°í ½ºÅ©¸³Æ®¸¦ Á¾·á.
                          #  "condition"À» ´Ù¸¥ °ÍÀ¸·Î ¹Ù²ãº¸°í 
                          #+ ¾î¶»°Ô µÇ´ÂÁö »ìÆ캸¼¼¿ä.

assert "$condition" $LINENO
# "assert"°¡ ½ÇÆÐÇÏÁö ¾ÊÀ» °æ¿ì¿¡¸¸ ´ÙÀ½ ºÎºÐÀÌ ½ÇÇàµË´Ï´Ù.


# ´Ù¸¥ ¸í·É¾îµé.
# ...

exit 0