system(3)
ÃÑ ÆäÀÌÁö ¼ö : 3224

Àüü ÇÔ¼ö/¿ë¾î»çÀü
Facebook Joinc ±×·ì   Joinc QA »çÀÌÆ®
ÇöÀçÀ§Ä¡ : docbook>system(3)



joinc´Â Firefox¿Í chrome¿¡¼­ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼­´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù.
HTML º¯È¯¹®¼­

<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook V4.1//EN"> 
<chapter lang=ko> 
<!-- ÀÛ¼ºÀÚ : yundream             --> 
<!-- ÀÛ¼ºÀÏ : 2004/04/28           --> 
<!-- ¿¬¶ôó : yundream@joinc.co.kr --> 
 
<!-- ÇÔ¼ö À̸§À» ÀÔ·ÂÇÕ´Ï´Ù --> 
<title>system(3)</title> 
 
<!-- ÀÌ°Ç ÇÔ¼ö¿¡ ´ëÇÑ ´ë·«ÀûÀÎ ¼³¸íÀ̱¸¿ä --> 
<para> 
    shell ¸í·É¾î ½ÇÇà±â 
</para> 
  
<!-- ¿©±â¿¡ ÇÔ¼öÀÇ °£´ÜÇÑ »ç¿ë¹ýÀÌ µé¾î°©´Ï´Ù --> 
<section> 
    <title>»ç¿ë¹ý</title> 
    <para> 
        <screen> 
#include <stdlib.h> 
 
int system(const char *string); 
        </screen> 
    </para> 
</section> 
 
<!-- ¿©±â¿£ ÇÔ¼öÀÇ ÀÚ¼¼ÇÑ ¼³¸í ÀÌ µé¾î°©´Ï´Ù --> 
<section> 
    <title>¼³¸í</title> 
    <para> 
        system() ÇÔ¼ö´Â /bin/sh -c <emphasis>string</emphasis>¸¦ È£ÃâÇÏ¿©  
        <emphasis>string</emphasis>¿¡ ÁöÁ¤µÈ ¸í·É¾î¸¦ ½ÇÇàÇϰí, ¸í·É¾î°¡ ³¡³­ÈÄ 
        ¹ÝȯÇÑ´Ù. ¸í·É¾î°¡ ½ÇÇൿ¾È, SIGCHLD´Â ºí·°µÇ¸ç, SIGINT, SIGQUIT´Â  
        ¹«½ÃµÈ´Ù. system() ÇÔ¼ö´Â ±âº»ÀûÀ¸·Î fork()¿Í execve()ÀÇ Á¶ÇÕÀÀ¿ëÀÌ´Ù.  
    </para> 
</section> 
 
<!-- ÇÔ¼ö°¡ µÇµ¹·ÁÁÖ´Â °ªÀ̱¸¿ä --> 
<section> 
    <title>¹Ýȯ°ª</title> 
    <para> 
        ¸¸¾à /bin/sh¸¦ ½ÇÇà½Ã۱â À§ÇÑ execve()ÀÇ È£ÃâÀÌ ½ÇÆÐÇß´Ù¸é 127ÀÌ  
        ¸®ÅϵǸç, ´Ù¸¥ ¿¡·¯°¡ ÀÖ´Ù¸é -1, ±×·¸Áö ¾Ê´Ù¸é ¸í·É¾îÀÇ ¸®ÅÏÄڵ尡  
        ¹ÝȯµÈ´Ù. 
    </para> 
    <para> 
        <emphasis>string</emphasis>°ªÀÌ NULLÀ̰í, system()ÀÌ shellÀ» ÀÌ¿ëÇÒ ¼ö  
        ÀÖ´Ù¸é 0ÀÌ ¾Æ´Ñ °ªÀ» ±×·¸Áö ¾Ê´Ù¸é 0À» ¹ÝȯÇÑ´Ù.  
    </para> 
    <para> 
        system()Àº ´Ù¸¥ wait()»óÅÂÀÇ ´Ù¸¥ ÀڽĿ¡°Ô ¿µÇâÀ» ÁÖÁö ¾Ê´Â´Ù.  
    </para> 
</section> 
 
<!-- ¸¶Áö¸·À¸·Î ¿¡Á¦ ÀÔ´Ï´Ù                                                 --> 
<!-- ¿©±â¿¡´Â ¿ÏÀüÇÑ ¿¹Á¦°¡ µé¾î°¡ Àִµ¥, ±»ÀÌ ¿ÏÀüÇÑ ¿¹Á¦¸¦ ¸¸µéÇÊ¿ä ¾øÀÌ --> 
<!-- ÄÚµå ÀϺκи¸ ÀÛ¼ºÇؼ­ ¿Ã·ÁÁּŵµ µË´Ï´Ù                               -->  
<!-- "<", ">", "&" µîÀº º¯È¯ÇØ ÁÖ¼Å¾ß Çϴµ¥, ±ÍÂúÀ¸½Ã¸é :-) º¯È¯ ÇÏÁö ¾Ê   --> 
<!-- ¾Æµµ µË´Ï´Ù. Á¦°¡ °Ë»ç ÇØ¼­ ¿Ã¸®°Ú½À´Ï´Ù                               --> 
<!-- ¿¹Á¦¿¡ ´ëÇÑ °£´ÜÇÑ ¼³¸íÀ» Àû¾îÁּŵµ µÇ±¸¿ä                            --> 
<section> 
    <title>¿¹Á¦</title> 
    <para> 
        <screen> 
#include <unistd.h> 
#include <stdio.h> 
 
int main(int argc, char **argv) 
{ 
    int i = 0; 
    int retval; 
    retval = system("ls -al"); 
    printf("Exit Status %d\n", retval); 
} 
        </screen> 
    </para> 
</section> 
<section> 
    <title>Âü°í¹®Çå</title> 
    <para> 
        <orderedlist> 
        <listitem> 
            <para> 
                fork() 
            </para> 
        </listitem> 
        <listitem> 
            <para> 
                execl() 
            </para> 
        </listitem> 
        </orderedlist> 
    </para> 
</section> 
</chapter> 
 
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù.