exit ¸í·É¾î´Â C ÇÁ·Î±×·¥¿¡¼Ã³·³ ½ºÅ©¸³Æ®¸¦ ³¡³¾ ¶§ ¾¹´Ï´Ù. ½©¿¡ ¾î¶² ƯÁ¤ÇÑ °ªÀ» µ¹·Á ÁÙ ¼öµµ ÀÖ½À´Ï´Ù.
¸ðµç ¸í·É¾î´Â Á¾·á »óÅÂ(exit status) (°¡²û ¸®ÅÏ »óÅÂ(return status) ¶ó°íµµ ÇÏ´Â)¸¦ ¸®ÅÏÇÕ´Ï´Ù. ¿¡·¯°¡ ¾øÀ» ¶§´Â 0À» ¸®ÅÏÇÏ°í ¿¡·¯°¡ ÀÖÀ» ¶§´Â non-zero¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¶§ non-zero °ªÀº ¿¡·¯ ÄÚµå·Î ÇØ¼® ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ºñ½ÁÇϰÔ, ½ºÅ©¸³Æ® ¼ÓÀÇ ÇÔ¼ö³ª ½ºÅ©¸³Æ® ÀÚüµµ Á¾·á »óŸ¦ ¸®ÅÏÇÕ´Ï´Ù. ½ºÅ©¸³Æ®³ª ¸¶Áö¸·À¸·Î ½ÇÇàµÈ ÇÔ¼ö°¡ Á¾·á »óŸ¦ °áÁ¤ÇÕ´Ï´Ù. ½ºÅ©¸³Æ® »ó¿¡¼ exit nnÀ̶õ ¸í·É¾î·Î Á¾·á »óÅÂ, nnÀ» ½©¿¡°Ô Àü´ÞÇÒ ¼ö ÀÖ½À´Ï´Ù(nn Àº 0 - 255 »çÀÌÀÇ ½ÊÁø¼ö).
$?Àº ½ºÅ©¸³Æ®³ª ÇÔ¼öÀÇ Á¾·á »óŸ¦ ³ªÅ¸³À´Ï´Ù.
예 3-1. Á¾·á¿Í Á¾·á »óÅÂ
#!/bin/bash echo hello echo $? # ¸í·É¾î°¡ ¿¡·¯ ¾øÀÌ ¼º°øÀûÀ¸·Î ³¡³µ±â ¶§¹®¿¡ # Á¾·á »óÅ 0ÀÌ ¸®Åϵ˴ϴÙ. lskdf # ÀÌ·± ¸í·É¾î´Â ¾ø°ÚÁÒ? echo $? # 0ÀÌ ¾Æ´Ñ Á¾·á »óŰªÀÌ ¸®Åϵ˴ϴÙ. echo exit 143 # ½©¿¡ 143À» ¸®ÅÏÇÕ´Ï´Ù. # È®ÀÎÇØ º¸·Á¸é ½ºÅ©¸³Æ®°¡ ³¡³´ÙÀ½¿¡ $? ¶ó°í Ãĺ¸¼¼¿ä. # °ü½ÀÀûÀ¸·Î 'exit 0'Àº ¼º°øÀ» ³ªÅ¸³»°í, # 0ÀÌ ¾Æ´Ñ Á¾·á °ªÀº ¿¡·¯³ª ºñÁ¤»óÀûÀÎ »óŸ¦ ³ªÅ¸³À´Ï´Ù. # ´Ù¸¥ ÇÁ·Î¼¼½ºµé°ú Åë½ÅÀ» ÇÑ´ÙµçÁö ´Ù¸¥ ½ºÅ©¸³Æ®µé°ú ÆÄÀÌÇÁ·Î ¿¬°áµÇ´Â # °æ¿ìµî¿¡¼ Á¾·á »óŸ¦ ¾²´Â °Íµµ ±¦Âú½À´Ï´Ù. |