mycat.lc 879 B

12345678910111213141516171819202122
  1. #include "unp.h"## 1 ##src/unixdomain/mycat.c##
  2. int my_open(const char *, int);## 2 ##src/unixdomain/mycat.c##
  3. int## 3 ##src/unixdomain/mycat.c##
  4. main(int argc, char **argv)## 4 ##src/unixdomain/mycat.c##
  5. {## 5 ##src/unixdomain/mycat.c##
  6. int fd, n;## 6 ##src/unixdomain/mycat.c##
  7. char buff[BUFFSIZE];## 7 ##src/unixdomain/mycat.c##
  8. if (argc != 2)## 8 ##src/unixdomain/mycat.c##
  9. err_quit("usage: mycat <pathname>");## 9 ##src/unixdomain/mycat.c##
  10. if ((fd = my_open(argv[1], O_RDONLY)) < 0)## 10 ##src/unixdomain/mycat.c##
  11. err_sys("cannot open %s", argv[1]);## 11 ##src/unixdomain/mycat.c##
  12. while ((n = Read(fd, buff, BUFFSIZE)) > 0)## 12 ##src/unixdomain/mycat.c##
  13. Write(STDOUT_FILENO, buff, n);## 13 ##src/unixdomain/mycat.c##
  14. exit(0);## 14 ##src/unixdomain/mycat.c##
  15. }## 15 ##src/unixdomain/mycat.c##