#!/bin/bash # 'expr'ÀÇ ¸î°¡Áö »ç¿ë¹ý º¸¿©ÁÖ±â # =============================== echo # »ê¼ú ¿¬»êÀÚ # ---- ------ echo "»ê¼ú ¿¬»êÀÚ" echo a=`expr 5 + 3` echo "5 + 3 = $a" a=`expr $a + 1` echo echo "a + 1 = $a" echo "(º¯¼ö Áõ°¡)" a=`expr 5 % 3` # ³ª¸ÓÁö(modulo) echo echo "5 mod 3 = $a" echo echo # ³í¸® ¿¬»êÀÚ # ---- ------ # ÂüÀ̸é 1, °ÅÁþÀ̸é 0 ¸®ÅÏ. # Bash °ü·Ê¿Í ¹Ý´ëÀÔ´Ï´Ù. echo "³í¸® ¿¬»êÀÚ" echo x=24 y=25 b=`expr $x = $y` # °°Àº °ªÀÎÁö È®ÀÎÇϱâ. echo "b = $b" # 0 ( $x -ne $y ) echo a=3 b=`expr $a \> 10` echo 'b=`expr $a \> 10`, Áï...' echo "If a > 10, b = 0 (°ÅÁþ)" echo "b = $b" # 0 ( 3 ! -gt 10 ) echo b=`expr $a \< 10` echo "If a < 10, b = 1 (Âü)" echo "b = $b" # 1 ( 3 -lt 10 ) echo # ¿¬»êÀÚ¸¦ À̽ºÄÉÀÌÇÁ ½ÃŲ°Í¿¡ ÁÖÀÇ. b=`expr $a \<= 3` echo "If a <= 3, b = 1 (Âü)" echo "b = $b" # 1 ( 3 -le 3 ) # "\>=" ¿¬»êÀÚµµ ÀÖ¾î¿ä(Å©°Å³ª °°À½). echo echo # ºñ±³ ¿¬»êÀÚ # ---- ------ echo "ºñ±³ ¿¬»êÀÚ" echo a=zipper echo "a ´Â $a" if [ `expr $a = snap` ] # º¯¼ö 'a'¸¦ °Á¦·Î ÀçÆò°¡(re-evaluation) then echo "a ´Â zipper °¡ ¾Æ´Ô" fi echo echo # ¹®ÀÚ¿ ¿¬»êÀÚ # ------ ------ echo "¹®ÀÚ¿ ¿¬»êÀÚ" echo a=1234zipper43231 echo "\"$a\" ¸¦ °¡Áö°í Á¶ÀÛÇØ º¸°Ú½À´Ï´Ù." # length: ¹®ÀÚ¿ ±æÀÌ b=`expr length $a` echo "\"$a\" ÀÇ ±æÀÌ´Â $b." # index: ¹®ÀÚ¿¿¡¼ ¹®ÀÚ¿Á¶°¢(substring)ÀÌ ÀÏÄ¡Çϴ ù¹ø° ¹®ÀÚÀÇ À§Ä¡ b=`expr index $a 23` echo "\"$a\" ¿¡¼ \"2\" °¡ ù¹ø°·Î ³ª¿À´Â À§Ä¡´Â \"$b\" ÀÔ´Ï´Ù." # substr: ¹®ÀÚ¿Á¶°¢ ÃßÃâ, ÃßÃâÇÒ ½ÃÀÛ À§Ä¡¿Í ÃßÃâÇÒ ±æÀÌ ÁöÁ¤ b=`expr substr $a 2 6` echo "½ÃÀÛÀ§Ä¡´Â 2ÀÌ°í ±æÀÌ°¡ 6ÀÎ \"$a\" ÀÇ ¹®ÀÚ¿Á¶°¢Àº \"$b\" ÀÔ´Ï´Ù." # 'match' ¿¬»êÀº Á¤±ÔÇ¥Çö½ÄÀ» ¾²´Â 'grep'°ú ºñ½ÁÇÕ´Ï´Ù. b=`expr match "$a" '[0-9]*'` echo \"$a\" ¿¡¼ ¾ÕÂÊ¿¡ ³ª¿À´Â ¼ýÀÚÀÇ °¹¼ö´Â $b ÀÔ´Ï´Ù. b=`expr match "$a" '\([0-9]*\)'` # Áß°ýÈ£°¡ À̽ºÄÉÀÌÇÁµÈ °Í¿¡ ÁÖÀÇÇϼ¼¿ä. echo "\"$a\" ¿¡¼ ¾ÕÂÊ¿¡ ³ª¿À´Â ¼ýÀÚ´Â \"$b\" ÀÔ´Ï´Ù." echo exit 0