ÔÚUnix¸ß¼¶±à³ÌµÚ13Õ¡¶ÊØ»¤½ø³Ì¡·£¨Êé343-344Ò³£©ÖÐÌáµ½¹ý£¬¿ÉÒÔÓÃÈçÏµķ½·¨Ê¹µÃÊØ»¤½ø³Ì´ò¿ª/dev/null£¬Ê¹Æä¾ßÓÐÎļþÃèÊö·û0¡¢1¡¢2¡£
fd0=open("/dev/null",O_RDWR);
fd1=dup(0);
fd2=dup(0);
ͬʱÊéµÄµÚ3ÕÂÓÖ˵¹ý£º
ÎļþÃèÊö·û0¡¢1¡¢2ÓÉshell´ò¿ª¡£ÍøÉϵÄ×ÊÁÏҲ˵£º´ÓshellÖÐÔËÐÐÒ»¸ö½ø³Ì£¬Ä¬ÈÏ»áÓÐ3¸öÎļþÃèÊö·û´æÔÚ(0¡¢£±¡¢2), 0Óë½ø³ÌµÄ±ê×¼ÊäÈëÏà¹ØÁª£¬£±Óë½ø³ÌµÄ±ê×¼Êä³öÏà¹ØÁª£¬2Óë½ø³ÌµÄ±ê×¼´íÎóÊä³öÏà¹ØÁª¡£
ÓÉopen·µ»ØµÄÎļþÃèÊö·ûÒ»¶¨ÊÇ×îСµÄδÓÃÃèÊö·ûÊýÖµ£¨Êé49Ò³£©
£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½
ÄÇô¼ÈÈ»open·µ»ØµÄÎļþÃèÊö·ûÒ»¶¨ÊÇ×îСµÄδÓÃÃèÊö·ûÊýÖµ£¬Í¬Ê±½ø³ÌÔÚ´ò¿ªµÄʱºò£¬ÒѾ´æÔÚÁË0¡¢1¡¢2ÃèÊö·û£¬ÄÇôµ±µ÷Óá°fd0=open("/dev/null",O_RDWR);¡±µÄʱºò£¬´ò¿ªµÄÓ¦¸ÃÖÁÉÙÊÇÎļþÃèÊö·û3ѽ£¬ÎªÊ²Ã´ÊÇÎļþÃèÊö·û0ÄØ£¿Õâ¸öµØ·½Ã»ÓÐŪÃ÷°×¡£


qq274255093 ÓÚ 2009-04-10 22:11:53·¢±í:
ÏÖÔÚÖªµÀÁË£¬¹ØÓÚfd0,fd1,fd2¾ÍÊǽ«0£¬1£¬2¸øÖض¨ÏòÁË£¬ÎªÊ²Ã´Õâô˵£¬ÊÇÒòΪ£¬ÄãÔÚÉÏÃæÒѾ
½«ËùÓеÄdescriptor¸ø¹Ø±ÕÁË£ºfor (i = 0; i < rl.rlim_max; i++) close(i);
ÄÇôÄãÕâ´Î´ò¿ªÎļþµÄʱºò£¬»áĬÈϵĴÓ0¿ªÊ¼·ÖÅädescriptor
qq274255093 ÓÚ 2009-04-10 20:48:45·¢±í:
ÎÒÒ²ÕýÔÚÄÉÃÆÄØ£¬¸ßÈ˽â´ðϰÉ