Á¦6 Àå Zend_Console_Getopt

¸ñÂ÷

6.1. Getopt ¿¡ ºÙ¾î
6.2. Getopt ÀÇ ±ÔÄ¢ÀÇ ¼±¾ð
6.2.1. ªÀº Çü½ÄÀÇ ¿É¼ÇÀÇ ¼±¾ð
6.2.2. ±ä Çü½ÄÀÇ ¿É¼ÇÀÇ ¼±¾ð
6.3. ¿É¼Ç ¹× ÀμöÀÇ Ãëµæ
6.3.1. Getopt ÀÇ ¿¹¿Ü ó¸®
6.3.2. À̸§¿¡ ÀÇÇÑ ¿É¼ÇÀÇ Ãëµæ
6.3.3. ¿É¼ÇÀÇ Ãëµæ
6.3.4. ºñ¿É¼Ç ÀμöÀÇ Ãëµæ
6.4. Zend_Console_Getopt ÀÇ ¼³Á¤
6.4.1. ¿É¼ÇÀÇ ±ÔÄ¢ÀÇ Ãß°¡
6.4.2. ÇïÇÁ ¸Þ¼¼ÁöÀÇ Ãß°¡
6.4.3. ¿É¼ÇÀÇ ¾Ù¸®¾î½º(alias)ÀÇ Ãß°¡
6.4.4. Àμö ¸®½ºÆ®ÀÇ Ãß°¡
6.4.5. ¼³Á¤ÀÇ Ãß°¡

6.1. Getopt ¿¡ ºÙ¾î

Zend_Console_Getopt Ŭ·¡½º´Â, Ä¿¸àµå ¶óÀÎ ¾îÇø®ÄÉÀ̼ÇÀ¸·ÎÀÇ ¿É¼ÇÀ̳ª ÀμöÀÇ Ã³¸®¸¦ µ½´Â °ÍÀÔ´Ï´Ù.

À¯Àú´Â, ¾îÇø®ÄÉÀ̼ÇÀ» ½ÇÇàÇÒ ¶§¿¡ Ä¿¸àµå ¶óÀÎ Àμö¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ Àμö´Â ¾îÇø®ÄÉÀ̼ǿ¡ À־ ¾î¶°ÇÑ Àǹ̸¦ °¡Áö´Â °ÍÀ̾î, ¾î¶°ÇÑ ÇൿÀ» º¯°æÇϰųª ÀÚ¿øÀ» ¼±ÅÃÇϰųª ÆÄ¶ó¹ÌÅ͸¦ ¼³Á¤Çϰųª ÇÕ´Ï´Ù. ¸¹Àº ¿É¼Ç¿¡´Â, °ü·Ê°¡ µÇ°í ÀÖ´Â Àǹ̰¡ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î "--verbose" (Àº)´Â, ¸¹Àº ¾îÇø®ÄÉÀ̼ÇÀ¸·Î Ãâ·Â ³»¿ëÀ» ÇÑÃþ ´õ Ãß°¡ÇÕ´Ï´Ù. ±× ¿ÜÀÇ ¿É¼Ç¿¡´Â, ¾îÇø®ÄÉÀ̼ǿ¡ µû¶ó¼­ Àǹ̰¡ ´Ù¸¥ °Íµµ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î "-c" (Àº)´Â, grep ,ls ¹× tar ±×¸®°í °¢°¢ ´Ù¸¥ ±â´ÉÀ» ³ªÅ¸³À´Ï´Ù.

ÀÌÇÏ·Î ¿ë¾îÀÇ Á¤ÀǸ¦ ÇÕ´Ï´Ù.ÀÌ·¯ÇÑ ¿ë¾î´Â ¿©·¯°¡Áö Àǹ̷ΠÀÌ¿ëµË´Ï´Ù¸¸, ÀÌ ¹®¼­¿¡¼­´Â, ¿©±â¼­ Á¤ÀÇÇÑ Àǹ̷Π»ç¿ëÇÕ´Ï´Ù.

  • " Àμö (argument)": Ä¿¸àµå ¶óÀÎÀ¸·Î, Ä¿¸àµå¸íÀÇ µÚ¿¡ ³ªÅ¸³ª´Â ¹®ÀÚ¿­. Àμö¿¡´Â, ¿É¼ÇÀÌ ºÙ±âµµ ÇÏ°í ºÙÁö ¾Ê´Â °Íµµ ÀÖ½À´Ï´Ù.Àμö¿¡ ÀÇÇØ, Ä¿¸àµåÀÇ Á¶ÀÛ ´ë»óÀÌ µÇ´Â ÀÚ¿øÀ» ÁöÁ¤ÇÕ´Ï´Ù.

  • " ¿É¼Ç (option)": Àμö °¡¿îµ¥, ±× Ä¿¸àµåÀÇ µðÆúÆ®ÀÇ ÇൿÀ» ¾î¶°ÇÑ ¹æ¹ýÀ¸·Î º¯°æÇÏ´Â °Í.

  • " Ç÷¡±× (flag)": ¿É¼ÇÀÇ ÃÖÃÊÀÇ ºÎºÐ¿¡¼­, ±× ¿É¼ÇÀÇ ¸ñÀûÀ» ³ªÅ¸³»´Â °Í.Ç÷¡±×ÀÇ Àü¿¡´Â, °ü½ÀÀûÀ¸·Î Çϳª ȤÀº µÎ µ¥½¬ ("-" ȤÀº "--") (À»)¸¦ ºÙÀÌ°Ô µÇ¾î ÀÖ½À´Ï´Ù. ÇϳªÀÇ µ¥½¬¸¦ ºÙÀÌ´Â °ÍÀº, ÇÑ ±ÛÀÚÀÇ Ç÷¡±×³ª ȤÀº ÇÑ ±ÛÀÚ Ç÷¡±×ÀÇ Å¬·¯½ºÅÍÀÇ °æ¿ìÀÔ´Ï´Ù. µÎ µ¥½¬¸¦ ºÙÀÌ´Â °ÍÀº º¹¼ö ¹®ÀڷκÎÅÍ µÇ´Â Ç÷¡±×ÀÇ °æ¿ìÀÔ´Ï´Ù. ±ä Çü½ÄÀÇ Ç÷¡±×´Â Ŭ·¯½ºÅÍÈ­ÇÒ ¼ö ¾ø½À´Ï´Ù.

  • " ÆÄ¶ó¹ÌÅÍ (parameter)": ¿É¼ÇÀÇ µÎ¹øÂ°ÀÇ ºÎºÐ¿¡¼­, Ç÷¡±×¿Í ÇÔ²² »ç¿ëÇÏ´Â µ¥ÀÌÅÍÀÇ °ªÀ» ÁöÁ¤ÇÕ´Ï´Ù. À̰ÍÀº, ¿É¼ÇÀÌ ±×°ÍÀ» ¹Þ¾ÆµéÀÌ´Â °æ¿ì¿¡ ÇÑÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ¸¹Àº Ä¿¸àµå´Â "--verbose" ¿É¼ÇÀ» ¹Þ¾ÆµéÀÔ´Ï´Ù¸¸, ÀÌ ¿É¼Ç¿¡´Â ÀϹÝÀûÀ¸·Î ÆÄ¶ó¹ÌÅ͸¦ ÁöÁ¤ÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯³ª,"--user" (¿Í)°ú °°Àº ¿É¼ÇÀº, ´ëºÎºÐÀÇ °æ¿ì´Â ±× ÈÄ¿¡ ÆÄ¶ó¹ÌÅͰ¡ ÇÊ¿äÇÕ´Ï´Ù.

    ÆÄ¶ó¹ÌÅÍ´Â Ç÷¡±× ÀμöÀÇ ´ÙÀ½¿¡ ´Ù¸¥ Àμö·Î¼­ ÁöÁ¤ÇÒ ¼öµµ ÀÖ°í, ȤÀº µ¿ÀÏÇÑ Àμö ¹®ÀÚ¿­ÀÇ ÀϺημ­ ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì´Â, Ç÷¡±×¿Í ÆÄ¶ó¹ÌÅ͸¦ µîÈ£ ("=") ±×¸®°í ¿¬°áÇÕ´Ï´Ù. ÈÄÀÚÀÇ Çü½ÄÀº, ±ä Ç÷¡±×¿¡¼­¸¸ ¼­Æ÷Æ®Çϰí ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, -u username ,--user username ȤÀº --user=username ±×·¸´Ù°í ÇÏ´Â Çü½ÄÀ» Zend_Console_Getopt ±×¸®°í ¼­Æ÷Æ®Çϰí ÀÖ½À´Ï´Ù.

  • " Ŭ·¯½ºÅÍ (cluster)": º¹¼öÀÇ ÇÑ ±ÛÀÚÀÇ Ç÷¡±×¸¦ Á¶ÇÕÇØ ÇϳªÀÇ µ¥½¬ÀÇ µÚ¿¡ ¹®ÀÚ¿­·Î¼­ ¿¬°áÇÑ °Í. ¿¹¸¦ µé¾î "ls -1str" (Àº)´Â ³× °³ÀÇ Ç÷¡±×ÀÇ Å¬·¯½ºÅ͸¦ »ç¿ëÇϰí ÀÖ½À´Ï´Ù. ÀÌ Ä¿¸àµå´Â "ls -1 -s -t -r" (¿Í)°ú µ¿µîÇÕ´Ï´Ù.Ŭ·¯½ºÅÍÈ­ÇÒ ¼ö ÀÖ´Â °ÍÀº ÇÑ ±ÛÀÚÀÇ Ç÷¡±×¸¸À¸·Î, ±ä Çü½ÄÀÇ Ç÷¡±×´Â Ŭ·¯½ºÅÍÈ­ÇÒ ¼ö ¾ø½À´Ï´Ù.

¿¹¸¦ µé¾î "mysql --user=root mydatabase" ¿¡ µÎ°í, "mysql" ÇÏ Ä¿¸àµå , "--user=root" ÇÏ ¿É¼Ç , "--user" ÇÏ Ç÷¡±× , "root" (Àº)´Â ¿É¼Ç¿¡ ´ëÇÑ´Ù ÆÄ¶ó¹ÌÅÍ µË´Ï´Ù.¶Ç "mydatabase" (Àº)´Â, ÀÌ Á¤ÀÇ¿¡ ÀÇÇϸé ÀμöÀÔ´Ï´Ù¸¸ ¿É¼ÇÀÌ ¾Æ´Õ´Ï´Ù.

Zend_Console_Getopt ÇÏÁö¸¸ Á¦°øÇÏ´Â ÀÎÅÍÆäÀ̽º¿¡´Â, ¡¸¾îÇø®ÄÉÀ̼ÇÀ¸·Î »ç¿ë °¡´ÉÇÑ Ç÷¡±×ÀÇ ¼±¾ð¡¹ ¡¸¹«È¿ÀÎ Ç÷¡±×°¡ ÁöÁ¤µÇ¾úÀ» °æ¿ìÀÇ ¿¡·¯ Ç¥½Ã ¹× »ç¿ë¹ýÀÇ Ç¥½Ã¡¹ ¡¸À¯Àú°¡ ÁöÁ¤ÇÑ Ç÷¡±×ÀÇ ¾îÇø®ÄÉÀ̼ǿ¡ÀÇ ÅëÁö¡¹ µîÀÌ ÀÖ½À´Ï´Ù.

[
ÁÖÀÇ] Getopt (Àº)´Â ¾îÇø®ÄÉÀÌ¼Ç Ã¼Á¦°¡ ¾Æ´Õ´Ï´Ù

Zend_Console_Getopt ÇÏdoes Ç÷¡±×³ª ÆÄ¶ó¹ÌÅÍÀÇ Àǹ̸¦ ÇØ¼®ÇÏ´Â °Í (Àº)´Â ¾Æ´Ï°í , ¶Ç ¾îÇø®ÄÉÀ̼ÇÀÇ ¿öÅ©Ç÷ο츦 ½ÇÀåÇϰųª Äڵ带 ±âµ¿Çϰųª ÇÏ´Â °ÍÀ̱⵵ ÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯ÇÑ Ã³¸®¿¡ ´ëÇØ¼­´Â, ¾îÇø®ÄÉÀ̼dz»¿¡¼­ ½º½º·Î ½ÇÀåÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. Zend_Console_Getopt Ŭ·¡½º¸¦ »ç¿ëÇϸé, Ä¿¸àµå ¶óÀÎÀ» ÆÛ½º ÇØ, À¯Àú°¡ ÁöÁ¤ÇÑ ¿É¼ÇÀ» °´Ã¼ ÁöÇâÀÇ ¸Þ¼Òµå·Î ÃëµæÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù. ±×·¯³ª, ±× Á¤º¸¸¦ ±âÃÊ·Î ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¾î¶°ÇÑ Ã³¸®¸¦ ½Ç½ÃÇÏ´Â °ÍÀº ´Ù¸¥ PHP Ŭ·¡½ºÀÇ ÀÏÀÔ´Ï´Ù.

ÀÌ ÀÌÈÄÀÇ ¸¶µð·Î,Zend_Console_Getopt ÀÇ »ç¿ë¹ýÀ» ¼³¸íÇÕ´Ï´Ù.