---
chown.1 | 14 +++++++++++---
chown.c | 8 ++++++--
2 files changed, 17 insertions(+), 5 deletions(-)
diff --git a/chown.1 b/chown.1
index 4bb3b8b..af6ac69 100644
--- a/chown.1
+++ b/chown.1
_AT_@ -11,15 +11,23 @@
.Fl R
.Op Fl H | L | P
.Oc
-.Op Ar owner Op Ar :group
+.Ar owner Ns Op : Ns Op Ar group
+.Op Ar file ...
+.Nm
+.Op Fl h
+.Oo
+.Fl R
+.Op Fl H | L | P
+.Oc
+.Pf : Ar group
.Op Ar file ...
.Sh DESCRIPTION
.Nm
-sets the user or group id of each
+sets the user and/or group id of each
.Ar file
to the uid of
.Ar owner
-or the gid of
+and/or the gid of
.Ar group
respectively.
.Sh OPTIONS
diff --git a/chown.c b/chown.c
index 1bf9cbb..8bb08e3 100644
--- a/chown.c
+++ b/chown.c
_AT_@ -40,8 +40,9 @@ chownpwgr(const char *path, struct stat *st, void *data, struct recursor *r)
static void
usage(void)
{
- eprintf("usage: %s [-h] [-R [-H | -L | -P]] [owner][:[group]] "
- "file ...\n", argv0);
+ eprintf("usage: %s [-h] [-R [-H | -L | -P]] owner[:[group]] file ...\n"
+ " %s [-h] [-R [-H | -L | -P]] :group file ...\n",
+ argv0, argv0);
}
int
_AT_@ -99,6 +100,9 @@ main(int argc, char *argv[])
gid = estrtonum(group, 0, UINT_MAX);
}
}
+ if (uid < 0 && gid < 0)
+ usage();
+
for (argc--, argv++; *argv; argc--, argv++)
recurse(*argv, NULL, &r);
--
2.6.4
Received on Mon Dec 21 2015 - 19:58:00 CET
This archive was generated by hypermail 2.3.0 : Mon Dec 21 2015 - 20:00:15 CET