]> git.lizzy.rs Git - plan9front.git/blob - sys/src/cmd/chgrp.c
git/branch: somewhere in the syncing, the fix for junk files was lost
[plan9front.git] / sys / src / cmd / chgrp.c
1 #include <u.h>
2 #include <libc.h>
3
4 int     uflag;
5
6 void
7 main(int argc, char *argv[])
8 {
9         int i;
10         Dir dir;
11         char *group;
12         char *errs;
13
14         ARGBEGIN {
15         default:
16         usage:
17                 fprint(2, "usage: chgrp [ -uo ] group file ....\n");
18                 exits("usage");
19                 return;
20         case 'u':
21         case 'o':
22                 uflag++;
23                 break;
24         } ARGEND
25         if(argc < 1)
26                 goto usage;
27
28         group = argv[0];
29         errs = 0;
30         for(i=1; i<argc; i++){
31                 nulldir(&dir);
32                 if(uflag)
33                         dir.uid = group;
34                 else
35                         dir.gid = group;
36                 if(dirwstat(argv[i], &dir) == -1) {
37                         fprint(2, "chgrp: can't wstat %s: %r\n", argv[i]);
38                         errs = "can't wstat";
39                         continue;
40                 }
41         }
42         exits(errs);
43 }