|
http://www.hackerschool.org/HS_Boards/zboard.php?id=Free_Lectures&no=1426 [º¹»ç]
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
int
main(argc,argv)
int argc;
char **argv;
{
if(argc==1) //Àμö°¡ ¾øÀ» ¶§´Â »ç¿ë¹ýÀ» ¾Ë·ÁÁÖ°í Á¾·áÇÕ´Ï´Ù.
{
printf("%s%s%s","Usage : ",argv[0]," argvs\n");
return 1;
}
if(fork()!=0) //Æ÷Å©¸¦ ÇÏ¿© ºÎ¸ð¿Í ÀÚ½ÄÀ¸·Î ³ª´¯´Ï´Ù.
exit(0); //ºÎ¸ð´Â Á¾·áÇÏ¿© ¼ÐÀ» µ¹·ÁÁÝ´Ï´Ù.
setsid(); //ÀÚ½ÄÀº µ¥¸óÀÌ µÇ¾î¾ß ÇÕ´Ï´Ù.
register int i; //¼Óµµ¸¦ ºü¸£°Ô Çϱâ À§ÇÏ¿© ·¹Áö½ºÅÍ º¯¼ö·Î »ç¿ëÇÕ´Ï´Ù.
char *cmd=malloc(1024); //cmd ¶ó´Â º¯¼ö¸¦ ÇÒ´çÇÕ´Ï´Ù.
strcpy(cmd,argv[1]); //Àμö1À» cmd¿¡ ³Ö½À´Ï´Ù.
for(i=2;i<argc;i++) //Àμö°¡ ³²¾ÆÀÖ´Â µ¿¾È
{
strcat(cmd," "); //Àμö»çÀÌ¿¡ " "¸¦ ³Ö°í
strcat(cmd,argv[i]); //Àμö¸¦ Áý¾î³Ö½À´Ï´Ù.
}
system(cmd); //±×¸®°í ¸í·ÉÀ» ½ÇÇàÇÕ´Ï´Ù.
printf("%s%s%s","GLaDOS : ",cmd," finished\n"); //±×¸®°í ³ª¼ Á¾·á°¡ µÇ¾ú´Ù°í ¾Ë·ÁÁÝ´Ï´Ù.
return 0; //±×¸®°í Á¾·áÇÕ´Ï´Ù.
} |
Hit : 7412 Date : 2010/03/06 09:18
|