¸®´ª½º °ü·Ã °­Á¶õ

HomePage Backward Forward Post Reply List
Delete Modify
  Á¦¸ñ   shell script #2 1998/05/08 (10:20)
À̸§ ±èÈ¿¿ø
¹øÈ£ 29
Á¶È¸ 2581
º»¹® 5) For ¹®

ÀÌ ¹®¹ýÀº Á¶°ÇÀ» ¸¸Á·ÇßÀ»¶§¿¡ °è¼ÓÇؼ­ ·çÇÁ¸¦ ½ÇÇàÇÏ°Ô ÇÕ´Ï´Ù.

for i in 0 1 2 3 4 5; do
echo $i
done

À§¿Í °°Àº ¿¹°¡ ÀÖ´Ù°í ÇսôÙ. ±×·¯¸é º¯¼ö i¶ó´Â °ª¿¡ 0ºÎÅÍ 5±îÁö ¼ø¼­
´ë·Î ´ëÀÔÀÌ µË´Ï´Ù. ±×·¡¼­ echo¶ó´Â ¸í·ÉÀ» »ç¿ëÇÏ¿© Ãâ·ÂÇÏ°Ô µÇ¸é °ªÀÌ
ÂïÈ÷°Ô µÇ´Â °ÍÀÔ´Ï´Ù. Çü½ÄÀ» Àß ºÁµÎ±â ¹Ù¶ø´Ï´Ù.

6) While ¹®
 
ÀÌ ¹®¹ýÀº Á¶°ÇÀÌ ÂüÀÏ °æ¿ì ¸í·ÉÀ» ¼öÇàÇÏ°í ±×·¸Áö ¾ÊÀ» °æ¿ì ¼öÇàÀ» ÇÏ
Áö ¾Ê½À´Ï´Ù.

mount | awk '/ext2/ { printf $3}' | while read line; do
echo $line
done

À§ÀÇ ¿¹¸¦ ½ÇÇà ÇÏ°Ô µÇ¸é ¸®´ª½º¿¡ ¸¶¿îÆ®µÈ ³»¿ëÁß EXT2ÆÄÀÏ ½Ã½ºÅÛ¸¸À»
È­¸é¿¡ º¸¿©ÁÖ°Ô µË´Ï´Ù.

6) Until¹®

ÀÌ ¹®¹ýÀº While¹®°ú´Â ¹Ý´ë·Î Á¶°Ç¹®ÀÌ ¸¸Á·ÇÏÁö ¾ÊÀ» °æ¿ì¿¡¸¸ ¸í·ÉÀ» ¼ö
ÇàÇÏ°Ô µÇ¹Ç·Î Ç×»ó ÁÖÀÇÇØ¾ß ÇÕ´Ï´Ù. Áï Á¶°Ç¿¡ ´ëÇؼ­ °ÅÁþÀÎ °æ¿ì¿¡¸¸
¸í·É¼öÇàÀÌ ÀÌ·ç¾î Áý´Ï´Ù.

7) Case ¹®

ÀÌ ¹®¹ýÀº If¹®À» ¿©·¯°³ »ç¿ëÇÏ´Â °Í°ú °°Àº È¿°ú¸¦ ³¾¼ö ÀÖ½À´Ï´Ù. ´ÜÁö
If¹® ó·³ ´Ù¾çÇÑ Á¶°Ç½Ä º¸´Ù´Â °£´ÜÇÑ ºñ±³¿¡ Àû´çÇÕ´Ï´Ù.

case "$1" in
start)
echo "start"
;;
stop)
echo "stop"
;;
*)
echo "syntax error"
;;
esac

À§¿¡¼­ "$1"Àº ½ºÅ©¸³Æ®·Î µé¾î¿Â ù¹ø° ÀÎÀÚ¸¦ ¶æÇÏ´Â °ÍÀ̸ç ù¹ø° ÀÎ
ÀÚÀÇ ¹®ÀÚ¿­¿¡ µû¶ó¼­ ¸í·ÉÀ» ¼öÇàÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁÖ°í ÀÖ½À´Ï´Ù. ¿©±â¼­
*Àº ±×ÀÌ¿Ü¿¡¶ó´Â ¶æÀ¸·Î ÀÌÇØÇÏ¸é µË´Ï´Ù.

À§ ¹®¹ýÀ¸·Î ¾Æ·¡¿Í °°ÀÌ ¿©·¯ °ªÀ» µ¿½Ã¿¡ ¼±ÅÃÇÒ¼ö ÀÖµµ·Ï ÇÒ¼öµµ ÀÖ½À´Ï
´Ù.

case $1 in
'')   echo '$0: Usage: daemon [+/0nicelevel] {program}'
            exit 1;;
    -*|+*) nicelevel=$1
            shift;;
   *) nicelevel=0;;
esac

Áï '|'¸¦ »ç¿ëÇÔÀ¸·Î½á OR Á¶°ÇÀ¸·Î »ç¿ëµÉ¼ö ÀÖ½À´Ï´Ù. ¿©±â¼­ '-*'´Â ó
À½ ¹®ÀÚ°¡ '-'¸¦ ½ÃÀÛÇÑ´Ù¸éÀ̶ó´Â ¶æÀÔ´Ï´Ù. shift´Â ÀÔ·ÂµÈ ¿ÜºÎ ÀÎÀÚ¸¦
²ø¾î ´ç±â°Ô µÇ´Âµ¥ ¸¸¾à À§ÀÇ ¿¹¸¦ ½ÇÇàÇÒ ¶§ µÎ°³ÀÇ ÀÎÀÚ°¡ µé¾î ¿Â´Ù¸é
shift¸¦ »ç¿ëÇÔÀ¸·Î½á µÎ¹ø° ÀÎÀÚ°¡ ù¹ø° ÀÎÀÚÀÇ ¹öÆÛ·Î µé¾î ¿À°Ô µÇ
´Â °ÍÀÔ´Ï´Ù.

<Âü°í ½ÃÀÛ>

º¯¼öÀÇ ÂüÁ¶.

½ºÅ©¸³Æ®¿¡¼­ º¯¼ö¸¦ ÂüÁ¶Çϱâ À§Çؼ­´Â $¶ó´Â Å°¿öµå¸¦ »ç¿ëÇÏ¿© °¡´ÉÇѵ¥
¸¸¾à i¶ó´Â °ªÀÇ º¯¼ö¸¦ ÀÐ°í ½Í´Ù¸é $i¶ó°í »ç¿ëÇÏ¿©¾ß °¡´ÉÇÏ°Ô µË´Ï´Ù.

i="test"
echo $i

¶ó°í ÇßÀ»¶§, ºñ·Î½á i¶ó´Â º¯¼ö¸¦ Àоî È­¸é¿¡ Ç¥½ÃÇÏ°Ô µÇ´Âµ¥ ¿ÜºÎ¿¡¼­
Àü´ÞµÇ´Â ÀÎÀÚ¿ª½Ã ÀÌ·¯ÇÑ ¹æ½ÄÀ¸·Î »ç¿ë°¡´ÉÇÏ°Ô µÇ´Â °ÍÀÔ´Ï´Ù. Áï ù¹ø
° ÀÎÀÚ´Â $1 µÎ¹ø° ÀÎÀÚ´Â $2 ÀÌ·±½ÄÀ¸·Î Àü´ÞµÇ¸ç $0¿¡´Â ½ÇÇàµÇ´Â ½º
Å©¸³Æ®ÀÇ À̸§ÀÌ µé¾î °¡°Ô µË´Ï´Ù. ÀÌ¹Ì ¾Õ¿¡¼­ ¾Ë¾Æº» »çÇ×ÀÌÁÒ?
               
<Âü°í ³¡>

8) ÇÔ¼ö

½© ½ºÅ©¸³Æ®¸¦ ÀÛ¼ºÇÒ¶§¿¡ ÇÔ¼öµµ ¸¸µé¾î »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù. ¾Æ·¡´Â ÇÔ¼ö
ÀÇ ¿¹ÀÔ´Ï´Ù.

testfunc() {
echo "test func"
}

testfunc

ÀÌ°ÍÀº °£´ÜÇÏ°Ô ³ª¸¶ ÇÔ¼ö¸¦ ¸¸µé¾î º»°ÍÀε¥  À§ÀÇ ³»¿ëÀ» ¼öÇàÇÏ°Ô µÇ¸ç
È­¸é¿¡ "test func"¸¦ Ãâ·ÂÇÏ°Ô µË´Ï´Ù. ¸¸¾à¿¡ ¿©·¯ºÐµéÀÌ ÇÔ¼ö¿¡¼­ ÀÎÀÚ
¸¦ Àü´ÞÇÏ·Á¸é ¾î¶»°Ô ÇÏ¸é µÉ±î¿ä? ¾Æ·¡ ¿¹¸¦ º¾½Ã´Ù.

# A function to start a program.
daemon() {
# Test syntax.
       case $1 in
             '')    echo '$0: Usage: daemon [+/-nicelevel] {program}'
                     return 1;;
            -*|+*) nicelevel=$1
                     shift;;
                *)    nicelevel=0;;
         esac

         # Save basename.
         base=`basename $1`

         # See if it's already running.
         [ "`pidofproc $base`" != "" ] && return

         # echo basename of the program.
         echo -n "$base "

         # make sure it doesn't core dump anywhere; while this could mask
         # problems with the daemon, it also closes some security problems
         ulimit -c 0

         # And start it up.
         nice -n $nicelevel "$@"
}

À§ÀÇ ¿¹´Â ·¹µåÇÞ ¸®´ª½º¿¡¼­ »ç¿ëµÇ´Â ½ºÅ©¸³Æ®ÁßÀÇ ÇϳªÀε¥ ±â´ÉÀº ÇÁ·Î
±×·¥À» ¼öÇà½ÃÅ°´Â °ÍÀÔ´Ï´Ù. ±×·¯¸é ÀÌ ½ºÅ©¸³Æ®¸¦ ¾î¶»°Ô ¼öÇàÇÒ±î¿ä?

daemon <¼öÇàÇÒ ÇÁ·Î±×·¥>

ÀÌ·±½ÄÀ¸·Î »ç¿ëÀ» ÇÏ¿© ¼öÇàÇÒ¼ö ÀÖ°Ô µË´Ï´Ù.

À§¿¡¼­ º¸¸é ÀÎÀÚÀÇ Àü´Þ ¶ÇÇÑ ¿ÜºÎ ÀÎÀÚÀÇ Àü´Þ°ú ¸¶Âù°¡Áö·Î $1À» »ç¿ëÇÏ
¿´À½À» ¾Ë¼ö ÀÖ½À´Ï´Ù. Áï ÇÔ¼ö·Î Àü´ÞµÇ´Â ÀÎÀÚ¶ÇÇÑ ¿ÜºÎ ÀÎÀÚ¿Í ¸¶Âù°¡Áö
·Î 󸮵ǹǷΠ$1Àº ù¹ø° ÀÎÀÚ¸¦ $2´Â µÎ¹ø° ÀÎÀÚ¸¦ ¶æÇÏ°Ô µÇ´Â °ÍÀÔ´Ï
´Ù. ¸¶Áö¸·À¸·Î $@Àº ¸ðµç ÀÎÀÚ¸¦ ¶æÇÏ°Ô µË´Ï´Ù.

À§ÀÇ ¿¹¸¦ Á»´õ »ìÆì º¸¸é,

ulimit -c 0

¶ó´Â ºÎºÐÀ» º¼¼ö Àִµ¥ ÀÌ ºÎºÐÀº ÇÁ·Î±×·¥ÀÇ ¼öÇàÁß ¿À·ù°¡ ¹ß»ýµÉ °æ¿ì
Core¶ó´Â ¸Þ¸ð¸® DumpÆÄÀÏÀ» ¸¸µé°Ô µÇ´Âµ¥ ÀÌ°ÍÀ» »ý¼ºÇÏÁö ¸øÇϵµ·Ï ÇÏ´Â
°ÍÀÔ´Ï´Ù.

ÀÚ À̷μ­ ´ë·«ÀûÀÎ šv ½ºÅ©¸³Æ®¿¡ ´ëÇØ ¾Ë¾Æ º¸¾Ò´Âµ¥ ¾î¶§¿ä? ´ëÃæ °¨ Àâ
À»¼ö ÀÖ°ÚÁÒ? ±×·¯¸é À̹ø¿¡´Â ½ÇÁ¦·Î ¸®´ª½º¿¡¼­ »ç¿ëµÇ´Â ½ºÅ©¸³Å͸¦ ºÐ
¼®Çϸ鼭 ¼³¸íÇØ ³ª°¡°Ú½À´Ï´Ù.

ÀÚ ±×·¯¸é ¸ÕÀú ¿©·¯ºÐµéÀÌ °¡Àå ¸¹ÀÌ Á¢ÇÏ°Ô µÇ´Â profileÀ» ºÐ¼®ÇØ º¾½Ã
´Ù.

<Âü°í ½ÃÀÛ>

profileÀ̶ó´Â ÆÄÀÏÀº /etc ¹Ø¿¡ ÀÖ°í µµ½º¿¡¼­ÀÇ ¹èÄ¡ ÆÄÀÏ°ú ¸¶Âù°¡Áö·Î
¸®´ª½º°¡ ±¸µ¿µÇ¸é¼­ ÀÚµ¿À¸·Î ½ÇÇàÇØÁÖ´Â ½ºÅ©¸³Æ® ÆÄÀÏÀÔ´Ï´Ù.

<Âü°í ³¡>

PATH="$PATH:/usr/X11R6/bin"

½ÇÇà °¡´ÉÇÑ ÇÁ·Î±×·¥ÀÇ °æ·Î¸¦ ÁöÁ¤ÇÏ¿© µÒÀ¸·Î½á, ½ÇÇàÀ» Á»´õ Æí¸®ÇÏ°Ô
ÇÒ¼öÀÖµµ·Ï ÇÕ´Ï´Ù. PATH´Â DOS¿¡¼­ÀÇ PATH¿Í °°´Ù°í º¸¸é °¡Àå Á¤È®ÇÒ°Í
ÀÔ´Ï´Ù.

PS1="[\u@\h \W]\\$ "

ÀÌ°ÍÀº ¸í·É ÇÁ·ÒÇÁÆ®¸¦ ÁöÁ¤ÇØ ÁÖ´Â °ÍÀÔ´Ï´Ù.

USER=`id -un`

»ç¿ëÀÚÀÇ ¾ÆÀ̵𸦠ÁöÁ¤ÇØ ÁÖ´Â °ÍÀÔ´Ï´Ù.

MAIL="/var/spool/mail/$USER"

»ç¿ëÀÚÀÇ ¸ÞÀÏ Æú´õ¸¦ Á¤ÇÏ´Â °ÍÀÔ´Ï´Ù.

À§¿Í°°ÀÌ Á¤ÀÇµÈ ³»¿ëÀ» ¿ÜºÎ·Î ¾Ë·ÁÁÖ¾î¾ß Çϴµ¥ ÀÌ·¯ÇÑ ±â´ÉÀ»
"export" ¶ó´Â Å°¿öµå¸¦ »ç¿ëÇÏ¿© ÇÒ¼ö ÀÖ½À´Ï´Ù.

export PATH PS1 USER MAIL

¹Ý´ë·Î export·Î ¾Ë·ÁÁø º¯¼ö¸¦ ¾ø¾Ö·Á¸é unset À» »ç¿ëÇÏ¸é °¡´ÉÇØ
Áý´Ï´Ù.

ÀÚ ±×·¯¸é ÀÌ ÀÌ¿ÜÀÇ È¯°æ ¼³Á¤Àº ¾î¶»°Ô ÇØ¾ß ÇÒ±î¿ä? ÀÏÀÏÀÌ
/etc/profileÀ» ÆíÁýÇϱ⠺¸´Ù´Â ¾Æ·¡¿Í °°Àº ºÎºÐÀ» /etc/profile¿¡ Ãß°¡
ÇØ ÁÜÀ¸·Î½á, ÀÌÈÄ¿¡ ȯ°æ ¼³Á¤À» /etc/profile.d/  ¶ó´Â µð·¢Å丮¿¡ ³Ö¾î
µÒÀ¸·Î ÀÚµ¿ÀûÀ¸·Î °¡´ÉÇÏ°Ô ÇÒ¼ö ÀÖ½À´Ï´Ù.

for i in /etc/profile.d/*.sh ; do
if [ -x $i ]; then
        . $i
       else
               source $i
       fi
done
unset i

ºÐ¼®ÇØ º¸¸é ¿ì¼± /etc/profile.d/¿¡¼­ È®ÀåÀÚ°¡ sh·Î ³¡³ª´Â ÆÄÀÏÀ» ¸ðµÎ
ã¾Æ¼­ i¶ó´Â º¯¼ö¿¡ Çϳª¾¿ ´ëÀÔ½ÃÄÑ ³ª°¡°Ô µË´Ï´Ù. ±×ÈÄ i¶ó´Â º¯¼ö¿¡
Á¤ÀÇµÈ ÆÄÀÏÀÌ ½ÇÇà °¡´ÉÇÏ´Ù¸é(if ÀÇ -x¿É¼Ç)  ½ÇÇàÇÏ¸ç ±×·¸Áö ¾ÊÀ¸¸é
profile¿¡¼­ ÀÐ¾î µé¿©(source ¸í·ÉÀº ½ºÅ©¸³Æ®¸¦ ÇöÀç ½ºÅ©¸³Æ®¿¡ ÇÕÄ¡´Â
±â´ÉÀ» ÇÑ´Ù) 󸮸¦ ÇÕ´Ï´Ù.

¸¶Áö¸· ÁÙÀ» º¸±â ¹Ù¶ø´Ï´Ù.  unsetÀ̶ó´Â ¸í·ÉÀÌ ÀÖÁÒ? ÀÌ ¸í·ÉÀº Á¤ÀǵÈ
ȯ°æº¯¼ö¸¦ ÇØÁ¦ÇÏ´Â ±â´ÉÀ» Çϴµ¥ ¿©±â¿¡¼­´Â i¶ó´Â º¯¼ö¸¦ Á¦°ÅÇÕ´Ï´Ù.

¸¸¾à¿¡ ¿©·¯ºÐµéÀÌ "unset PATH" ¶ó´Â ¸í·ÉÀ» »ç¿ëÇÑ´Ù¸é ¿©·¯ºÐµéÀº ¿ÜºÎ
¸í·ÉÀ» ¼öÇàÇÒ¼ö ¾ø°Ô µÉ °ÍÀÔ´Ï´Ù.

ÀÚ ±×·¯¸é À̹ø¿¡´Â ¿©·¯ºÐÇÑÅ× µµ¿òÀÌ µÉ ¸¸ÇÑ ¸î°¡Áö ½© ½ºÅ©¸³Æ®¸¦ ¼Ò°³
ÇÏ°íÀÚ ÇÕ´Ï´Ù. ¾Æ¸¶ ¸¹Àº µµ¿òÀÌ µÉ °ÍÀÔ´Ï´Ù.

¸ÕÀú Color ls¿¡ ´ëÇÑ šv ½ºÅ©¸³Æ®ÀÔ´Ï´Ù. ¿©·¯ºÐµéÀÌ ½½·¢¿þ¾î¸¦ ¼³Ä¡Çß´Ù¸é
±âº»ÀûÀ¸·Î Ä÷¯ ls¸¦ »ç¿ëÇÏ°í ÀÖÀ» °Ì´Ï´Ù. ±×·¯³ª ·¹µåÇÞ ¸®´ª½º³ª µ¥ºñ¾È
¸®´ª½º´Â ±×·¸Áö ¾ÊÁÒ? ´ÙÀ½°ú ½© ½ºÅ©¸³Æ®¸¦ »ç¿ëÇϸé Ä÷¯ ls¸¦ »ç¿ëÇÒ¼ö
ÀÖÀ» °Ì´Ï´Ù.

export LS_OPTIONS="--color -F -b -T 0"
alias ll='/bin/ls $LS_OPTIONS --format=long'
alias ls='/bin/ls $LS_OPTIONS'
# set up the color-ls environment variables:
eval `dircolors -b`

À§ÀÇ ³»¿ëÀ» /etc/profile.d/color-ls.sh·Î ÀúÀåÇÑ´ÙÀ½, »õ·Î¿î ½©À» ¿­°Ô
µÇ¸é color·Î Ç¥½ÃµÇ´Â ls¸¦ º¼¼ö ÀÖÀ» °Ì´Ï´Ù.

¿©±â¼­ »õ·Î¿î ¸í·ÉÀ» º¼¼ö ÀÖ½À´Ï´Ù. ù¹ø°·Î "alias" ´Â °¡»óÀûÀÎ ¸í·É¾î
¸¦ ¸¸µå´Â °ÍÀ¸·Î ls¸í·ÉÀº ÀÌÈÄ¿¡ /bin/ls $LS_OPTIONS·Î ¼öÇàµÇ¾î Áö°Ô
µË´Ï´Ù.

µÎ¹ø°·Î, "eval `dircolors -b`"´Â Color ls ȯ°æ º¯¼ö¸¦ ¼³Á¤ÇÏ´Â °ÍÀÔ´Ï
´Ù.

µÎ ¹ø°·Î ¸®´ª½º¿¡ ÇѱÛÀ» »ç¿ëÇÏ·Á¸é ¾Æ·¡¿Í °°Àº ³»¿ëÀ» ȯ°æº¯¼ö¿¡ Á¤ÀÇ
ÇؾßÇÕ´Ï´Ù. µÚ¿¡°¡¼­ i18nÀ̶ó´Â °Í¿¡ ´ëÇØ ¾Ë¾Æ º¼ÅÙµ¥ À̶§¿¡ ¾Æ·¡ ³»¿ë
ÀÌ È¯°æº¯¼ö¿¡ Á¤ÀǵǾî ÀÖ¾î¾ß Çϰŵç¿ä.
        
export PERL_BADLANG=0
export LANG=ko

À§ÀÇ ³»¿ëÀ» /etc/profile.d/korean-basic.sh·Î ÀúÀåÇÑ ´ÙÀ½ »õ·Î¿î ½©À» ¿­
°Ô µÇ¸é ȯ°æ º¯¼ö°¡ ¼³Á¤µÇ¾î LANGº¯¼ö¸¦ ÂüÁ¶ÇÏ´Â ÇÁ·Î±×·¥¿¡¼­ ÇÑ±Û Ã³
¸®°¡ °¡´ÉÇØ Áý´Ï´Ù.

¿©±â¼­ ù ¹ø°¿¡ »ç¿ëµÈ PERL_BADLANG´Â PerlÀ» »ç¿ëÇÒ¶§¿¡ LANG°¡ 'C'Çü
Å°¡ ¾Æ´Ï¸é °æ°í ¸Þ½ÃÁö¸¦ Ãâ·ÂÇϴµ¥ À̸¦ Ãâ·ÂÇÏÁö ¸øÇÏ°Ô ÇÏ´Â ¿É¼ÇÀÔ
´Ï´Ù.

ÀÚ ±×·¯¸é ¸¶Áö¸·À¸·Î ½ÇÇà ½ºÅ©¸³Æ®¸¦ Çϳª º¾½Ã´Ù.

#!/bin/sh

which=""

if echo $0 | grep 'navigator' >/dev/null; then
   which=netscape-navigator
elif echo $0 | grep 'communicator' >/dev/null ; then
   which=netscape-communicator
fi

if [ -z $which ]; then
   if rpm -q netscape-communicator >/dev/null 2>&1; then
       which=netscape-communicator
   elif rpm -q netscape-navigator >/dev/null 2>&1; then
       which=netscape-navigator
   else
       echo "You don't have netscape installed." >&2
   fi
fi

if ! rpm -q $which >/dev/null 2>&1; then
   echo "You don't have $which installed." >&2
   exit 1
fi

I="`rpm -q $which --qf '%{INSTALLPREFIX}\n'`"
if [ "$I" = "(none)" ]; then
   I=/usr
fi

if [ -f $I/lib/netscape/gnumalloc.glibc.so ]; then
   export LD_PRELOAD=$I/lib/netscape/gnumalloc.glibc.so
fi

if [ -x $I/lib/netscape/$which ]; then
   if [ -d $I/lib/netscape/tclplug ]; then
       export TCL_PLUGIN_DIR=$I/lib/netscape/tclplug
   fi

   export LD_PRELOAD=$I/lib/netscape/gnumalloc.glibc.so
   if [ -z "$*" ]; then
exec $I/lib/netscape/$which /usr/doc/HTML/index.html
    else
       exec $I/lib/netscape/$which $*
    fi
fi

echo "An error occurred running and $I/lib/netscape/$which."

À§ÀÇ ³»¿ëÀ» º¸¸é ¾Ë°ÚÁö¸¸ Netscape¸¦ ½ÇÇàÇϱâ À§ÇÑ ½ºÅ©¸³Æ®ÀÔ´Ï
´Ù. ÀÌ ½ºÅ©¸³Æ®¸¦ ºÐ¼®Çغ¸¸é ¸¹Àº ºÎºÐ¿¡¼­ µµ¿òÀ» ¾òÀ»¼ö ÀÖ°Ô µÇ¸®¶ó
º¾´Ï´Ù. ¾î·Æ´Ù±¸¿ä? ÂùÂùÈ÷ º¸½Ê½Ã¿À. ±×·¯¸é ¿©±â¼­ ÇÊÀÚ°¡ ¸î°¡Áö Áß¿ä
ÇÑ È¯°æ º¯¼ö¿¡ ´ëÇؼ­¸¸ ¼³¸í µå¸®°Ú½À´Ï´Ù.

export LD_PRELOAD=$I/lib/netscape/gnumalloc.glibc.so

ÀÌ ºÎºÐÀº µ¿Àû ¶óÀ̺귯¸®¿¡ °ü·ÃµÈ ºÎºÐÀε¥ ¸®´ª½º¿¡¼­´Â µ¿Àû ¶óÀ̺귯
¸®ÀÇ À§Ä¡°¡ /etc/ld.so.conf¿¡ µî·Ï µÇ¾î ÀÖ½À´Ï´Ù. ±×·¯³ª À§ ȯ°æ º¯¼ö
¸¦ »ç¿ëÇÔÀ¸·Î½á /etc/ld.so.conf¿¡ Á¸ÀçÇÏ´Â µ¿Àû ¶óÀ̺귯¸® º¸´Ù ¿ì¼±Àû
À¸·Î ó¸®Çϵµ·Ï ÇÏ´Â ±â´ÉÀ» °®°Ô ÇÕ´Ï´Ù.

ÀÌ¿Ü¿¡ "exec"¶ó´Â ¸í·ÉÀÌ Àִµ¥ ÀÌ ¸í·ÉÀº ¿ÜºÎ ÇÁ·Î±×·¥À» ¼öÇàÇ϶ó´Â
¶æÀ¸·Î ÀϹÝÀûÀ¸·Î ¼öÇàµÇ´Â ¸í·É°ú´Â Â÷ÀÌ°¡ ÀÖ½À´Ï´Ù.

¸¸¾à¿¡

exec /bin/netscape $*

·Î ¼öÇàÀÌ µÇ¸é /bin/netscapeÀÇ ¼öÇàÈÄ netscape¸¦ Á¾·áÇÏ¸é ´Ù½Ã ½ºÅ©¸³
Æ®·Î µÇµ¹¾Æ ¿ÀÁö ¾Ê°í ¹Ù·Î ÇÁ·Î±×·¥À» Á¾·áÇÏ°Ô µÇ´Âµ¥

¹Ý´ë·Î

           /bin/netscape $*

·Î ¼öÇàÀÌ µÇ¸é netscape ¼öÇàÈÄ netscape¸¦ Á¾·áÇÏ¸é ½ÇÇàÇÏ´ø ½ºÅ©¸³Æ®·Î
´Ù½Ã µ¹¾Æ¿Í ´ÙÀ½ ¹®ÀåÀ» °è¼Ó ¼öÇàÇÏ°Ô µË´Ï´Ù.

<Âü°í ½ÃÀÛ>

ÇÊÀÚ°¡ ¹«¾ùÀ» ¹è¿ï¶§ ¸¶´Ù ´À³¢´Â °ÍÀε¥ Çѹø¿¡ ¸ðµÎ ÀÌÇØÇϱâ´Â Èûµì´Ï´Ù.
Ã¥À» ¾²´Â ÇÊÀÚµµ ¸ðµÎ¸¦ ¾Æ´Â °ÍÀº ¾Æ´Õ´Ï´Ù. ´ÜÁö ÇÊÀÚ°¡ Ç×»ó ¸»ÇÏ´Â °Í
Àº "³­, ³»°¡ »ç¿ëÇϴµ¥ ¾î·Á¿òÀÌ ¾øÀ» ¸¸Å­Àº ÇÑ´Ù."¶ó°í ¸»À» ÇÕ´Ï´Ù.
´ÜÁö ¿©·¯ºÐµéÀÌ ÀÌ Ã¥À» ÅëÇؼ­ ¸®´ª½º¸¦ »ç¿ëÇϴµ¥ ¾î·Æ¿òÀÌ ¾øÀ» ¸¸Å­
µ½°í ½ÍÀ» »ÓÀÌ´Ù.

<Âü°í ³¡>

HomePage Backward Forward Post Reply List
1998 by swindler