source: branches/3.2/mindi-busybox/coreutils/chgrp.c @ 3232

Last change on this file since 3232 was 3232, checked in by bruno, 5 years ago
  • Update mindi-busybox to 1.21.1
File size: 1.7 KB
Line 
1/* vi: set sw=4 ts=4: */
2/*
3 * Mini chgrp implementation for busybox
4 *
5 * Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
6 *
7 * Licensed under GPLv2 or later, see file LICENSE in this source tree.
8 */
9
10/* BB_AUDIT SUSv3 defects - none? */
11/* BB_AUDIT GNU defects - unsupported long options. */
12/* http://www.opengroup.org/onlinepubs/007904975/utilities/chgrp.html */
13
14//usage:#define chgrp_trivial_usage
15//usage:       "[-RhLHP"IF_DESKTOP("cvf")"]... GROUP FILE..."
16//usage:#define chgrp_full_usage "\n\n"
17//usage:       "Change the group membership of each FILE to GROUP\n"
18//usage:     "\n    -R  Recurse"
19//usage:     "\n    -h  Affect symlinks instead of symlink targets"
20//usage:     "\n    -L  Traverse all symlinks to directories"
21//usage:     "\n    -H  Traverse symlinks on command line only"
22//usage:     "\n    -P  Don't traverse symlinks (default)"
23//usage:    IF_DESKTOP(
24//usage:     "\n    -c  List changed files"
25//usage:     "\n    -v  Verbose"
26//usage:     "\n    -f  Hide errors"
27//usage:    )
28//usage:
29//usage:#define chgrp_example_usage
30//usage:       "$ ls -l /tmp/foo\n"
31//usage:       "-r--r--r--    1 andersen andersen        0 Apr 12 18:25 /tmp/foo\n"
32//usage:       "$ chgrp root /tmp/foo\n"
33//usage:       "$ ls -l /tmp/foo\n"
34//usage:       "-r--r--r--    1 andersen root            0 Apr 12 18:25 /tmp/foo\n"
35
36#include "libbb.h"
37
38/* This is a NOEXEC applet. Be very careful! */
39
40
41int chgrp_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
42int chgrp_main(int argc, char **argv)
43{
44    /* "chgrp [opts] abc file(s)" == "chown [opts] :abc file(s)" */
45    char **p = argv;
46    while (*++p) {
47        if (p[0][0] != '-') {
48            p[0] = xasprintf(":%s", p[0]);
49            break;
50        }
51    }
52    return chown_main(argc, argv);
53}
Note: See TracBrowser for help on using the repository browser.