Sophie

Sophie

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

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

#!/bin/bash
# logon.sh: ¿©·¯ºÐÀÌ ¾ÆÁ÷µµ ·Î±×ÀÎÇØ ÀÖ´ÂÁö¸¦ È®ÀÎÇØ ÁÖ´Â ¾ÆÁÖ °£´ÜÇÑ ½ºÅ©¸³Æ®.


TRUE=1
LOGFILE=/var/log/messages
# $LOGFILE Àº ÀÐÀ» ¼ö ÀÖ¾î¾ß µË´Ï´Ù(chmod 644 /var/log/messages).
TEMPFILE=temp.$$
# ÀÌ ½ºÅ©¸³Æ®ÀÇ ÇÁ·Î¼¼½º ID·Î "À¯ÀÏÇÑ" Àӽà ÆÄÀÏ À̸§À» ¸¸µì´Ï´Ù.
KEYWORD=address
#  ·Î±×ÀÎÀ» ÇÏ°Ô µÇ¸é /var/log/messages ¿¡ 
#+ "remote IP address xxx.xxx.xxx.xxx" ¶õ ÁÙÀÌ µ¡ºÙ¿© Áý´Ï´Ù.
ONLINE=22
USER_INTERRUPT=13

trap 'rm -f $TEMPFILE; exit $USER_INTERRUPT' TERM INT
#  ½ºÅ©¸³Æ®°¡ Control-C ¿¡ ÀÇÇØ ÀÎÅÍ·´Æ®¸¦ ¹Þ¾ÒÀ» °æ¿ì¿¡ Àӽà ÆÄÀÏÀ» Áö¿öÁÝ´Ï´Ù.

echo

while [ $TRUE ]  # ¹«ÇÑ ·çÇÁ.
do
  tail -1 $LOGFILE> $TEMPFILE
  # ½Ã½ºÅÛ ·Î±× ÆÄÀÏÀÇ ¸¶Áö¸· ÁÙÀ» Àӽà ÆÄÀÏ·Î ÀúÀå.
  search=`grep $KEYWORD $TEMPFILE`
  # ¼º°øÀûÀÎ ·Î±×ÀÎÀ» ³ªÅ¸³»´Â "IP address"¶õ ¹®±¸°¡ µé¾î ÀÖ´ÂÁö È®ÀÎ.

  if [ ! -z "$search" ] # ºó Ä­ÀÌ µé¾î ÀÖÀ» ¼ö Àֱ⠶§¹®¿¡ Äõ¿ìÆ® ÇÊ¿ä.
  then
     echo "On-line"
     rm -f $TEMPFILE    # Àӽà ÆÄÀÏ Áö¿ì±â.
     exit $ONLINE
  else
     echo -n "."        #  ¿¬¼ÓÀûÀÎ Á¡µéÀÌ ÂïÈ÷µµ·Ï -n ¿É¼ÇÀ¸·Î 
	                    #+ echo °¡ ´º¶óÀÎÀ» ¹«½ÃÇϵµ·Ï ÇÔ.
  fi

  sleep 1  
done  


#  ÁÖÀÇ: KEYWORD º¯¼ö¸¦ "Exit" ·Î ¹Ù²Ù¸é ·Î±×ÀÎ »óÅ¿¡¼­ °©ÀÛ½º·´°Ô ·Î±×¾Æ¿ôÀÌ
#+ µÆ´ÂÁö¸¦ È®ÀÎÇØ º¼ ¼ö ÀÖ½À´Ï´Ù.

# ¿¬½À¹®Á¦: À§ÀÇ ÁÖÀÇ»çÇ×´ë·Î ½ºÅ©¸³Æ®¸¦ ¹Ù²Ù°í ¿¹»Ú°Ô ´Ùµë¾î º¸¼¼¿ä.

exit 0


# Nick Drage °¡ ´Ù¸¥ ¹æ¹ýÀ» Á¦¾ÈÇØ ÁÖ¾ú½À´Ï´Ù:

while true
  do ifconfig ppp0 | grep UP 1> /dev/null && echo "connected" && exit 0
  echo -n "."   # ¿¬°áµÉ ¶§±îÁö Á¡(.....)À» Ãâ·Â.
  sleep 2
done

# ¹®Á¦Á¡: ÀÌ ½ºÅ©¸³Æ®¸¦ ³¡³»±â¿¡´Â Control-C ¸¦ ´©¸£´Â °Í¸¸À¸·Î ºÎÁ·ÇÕ´Ï´Ù.
#          (Á¡ÀÌ °è¼Ó ¿¡Äڵ˴ϴÙ.)
# ¿¬½À¹®Á¦: ÀÌ ¹®Á¦¸¦ ÇØ°áÇØ º¸¼¼¿ä.



# Stephane Chazelas µµ ´Ù¸¥ ¹æ¹ýÀ» Á¦¾ÈÇØ ÁÖ¾ú½À´Ï´Ù:

CHECK_INTERVAL=1

while ! tail -1 "$LOGFILE" | grep -q "$KEYWORD"
do echo -n .
   sleep $CHECK_INTERVAL
done
echo "On-line"

# ¿¬½À¹®Á¦: À§¿¡¼­ ¼³¸íÇÑ °¢ ¹æ¹ýµéÀÇ ÀåÁ¡°ú ´ÜÁ¡À» »ý°¢ÇØ º¸¼¼¿ä.