- <李类=發ist-num-2-1 list-num1-paddingleft-1”>
李> <李类=發ist-num-2-2 list-num1-paddingleft-1”>
李> <李类=發ist-num-2-3 list-num1-paddingleft-1”>
李>
,,,,
- <李类=發ist-num-2-1 list-num1-paddingleft-1”>
李> <李类=發ist-num-2-2 list-num1-paddingleft-1”>
李> <李类=發ist-num-2-3 list-num1-paddingleft-1”>
李> <李类=發ist-num-2-4 list-num1-paddingleft-1”>
# include & lt; stdio.h> # include & lt; stdlib.h> # include & lt; unistd.h> # include & lt; sys/types.h> # include & lt; fcntl.h> # include & lt; string.h> 命令行参数个数,int 主要(int const char * argv []) { ,pid_t pid; fd, int 我; ,char * buf =,“却;能够is a Daemon 日志\ n";=,,pid  fork (); ,如果(pid & lt;, 0) ,{ ,,perror (“fail 用叉\ n"); 退出才能(0); ,} ,如果(pid 祝辞,0),,//父进程退出,,第一步 ,{ 退出才能(0); ,} ,setsid(),,,,,//第二步 ,目录(“/tmp");,,//第三步 ,umask(0);,,//第四步 , ,(小姐:=,0;小姐:& lt;, getdtablesize();我+ +),,,//第五步,循环删除文件描述符 ,{ 关闭才能(我); ,} ,而(1) ,{ 如果才能((=fd 开放(“daemon.log", O_CREAT | O_RDWR | O_APPEND, 0667)) & lt; 0) ,{大敌; ,,perror (“fail 用open"); ,,退出(1); ,,} 写才能(fd,但strlen (buf)); 关闭才能(fd); 睡眠才能(2); ,} ,return 0; 李}>