1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- #include <u.h>
- #include <libc.h>
- int readgid(char*);
- int uflag;
- void
- main(int argc, char *argv[])
- {
- int i;
- Dir dir;
- char *group;
- char *errs;
- ARGBEGIN {
- default:
- usage:
- fprint(2, "usage: chgrp [ -uo ] group file ....\n");
- exits("usage");
- return;
- case 'u':
- case 'o':
- uflag++;
- break;
- } ARGEND
- if(argc < 1)
- goto usage;
- group = argv[0];
- errs = 0;
- for(i=1; i<argc; i++){
- nulldir(&dir);
- if(uflag)
- dir.uid = group;
- else
- dir.gid = group;
- if(dirwstat(argv[i], &dir) == -1) {
- fprint(2, "chgrp: can't wstat %s: %r\n", argv[i]);
- errs = "can't wstat";
- continue;
- }
- }
- exits(errs);
- }
|