|
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include "ourhdr.h"
#define BUFFSIZE 512
int main (void)
{
int n,fd;
char buff[BUFFSIZE];
if((fd=open("/root/fstab",O_RDONLY) == -1)) { /*打开/root/fstab,如果错误就退出*/
printf("open error\n");
exit (0);
}
else {
while (( n=read(fd,buff,BUFFSIZE)) >0) /* 读文件 */
if(write(STDOUT_FILENO,buff,n) == 0)
/*把文件写到标准输出。不知道这样想对不对。 */
printf("write error\n");
if (n<0)
printf("read error\n");
}
exit (0);
}
===========
# ./a.out
2432 <---------我输入的内容
2432 <---------程序输出的内容
sdfs
sdfs
^C
#
要求是输出/root/fstab的内容到标准输出,就象用cat /root/fstab的效果。
想不出怎么做,请帮帮忙!! |
|