1 #include <u.h> 2 #include <libc.h> 3 4 int readgid(char *); 5 6 void 7 main(int argc, char *argv[]) 8 { 9 int i; 10 Dir dir; 11 char err[ERRLEN]; 12 char *group; 13 char *errs; 14 15 if(argc < 2){ 16 fprint(2, "usage: chgrp group file ....\n"); 17 exits("usage"); 18 } 19 group = argv[1]; 20 errs = 0; 21 for(i=2; i<argc; i++){ 22 if(dirstat(argv[i], &dir)==-1){ 23 errstr(err); 24 fprint(2, "chgrp: can't stat %s: %s\n", argv[i], err); 25 errs = "can't stat"; 26 continue; 27 } 28 strncpy(dir.gid, group, sizeof(dir.gid)); 29 if(dirwstat(argv[i], &dir)==-1){ 30 errstr(err); 31 fprint(2, "chgrp: can't wstat %s: %s\n", argv[i], err); 32 errs = "can't wstat"; 33 continue; 34 } 35 } 36 exits(errs); 37 } 38