Module Name:    src
Committed By:   jruoho
Date:           Tue Nov 30 20:59:10 UTC 2010

Modified Files:
        src/distrib/sets/lists/man: mi
        src/share/man/man7: Makefile
Added Files:
        src/share/man/man7: glob.7

Log Message:
Add glob(7).

>From OpenBSD. Written by Todd C. Miller.


To generate a diff of this commit:
cvs rdiff -u -r1.1257 -r1.1258 src/distrib/sets/lists/man/mi
cvs rdiff -u -r1.24 -r1.25 src/share/man/man7/Makefile
cvs rdiff -u -r0 -r1.1 src/share/man/man7/glob.7

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/sets/lists/man/mi
diff -u src/distrib/sets/lists/man/mi:1.1257 src/distrib/sets/lists/man/mi:1.1258
--- src/distrib/sets/lists/man/mi:1.1257	Tue Nov 30 20:50:28 2010
+++ src/distrib/sets/lists/man/mi	Tue Nov 30 20:59:10 2010
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1257 2010/11/30 20:50:28 jruoho Exp $
+# $NetBSD: mi,v 1.1258 2010/11/30 20:59:10 jruoho Exp $
 #
 # Note: don't delete entries from here - mark them as "obsolete" instead.
 #
@@ -1963,6 +1963,7 @@
 ./usr/share/man/cat7/c99.0			man-reference-catman	.cat
 ./usr/share/man/cat7/des_modes.0		man-reference-catman	crypto,.cat
 ./usr/share/man/cat7/environ.0			man-reference-catman	.cat
+./usr/share/man/cat7/glob.0			man-reference-catman	.cat
 ./usr/share/man/cat7/hier.0			man-reference-catman	.cat
 ./usr/share/man/cat7/hostname.0			man-reference-catman	.cat
 ./usr/share/man/cat7/intro.0			man-reference-catman	.cat
@@ -4574,6 +4575,7 @@
 ./usr/share/man/html7/c99.html			man-reference-htmlman	html
 ./usr/share/man/html7/des_modes.html		man-reference-htmlman	crypto,html
 ./usr/share/man/html7/environ.html		man-reference-htmlman	html
+./usr/share/man/html7/glob.html			man-reference-htmlman	html
 ./usr/share/man/html7/hier.html			man-reference-htmlman	html
 ./usr/share/man/html7/hostname.html		man-reference-htmlman	html
 ./usr/share/man/html7/intro.html		man-reference-htmlman	html
@@ -7161,6 +7163,7 @@
 ./usr/share/man/man7/c99.7			man-reference-man	.man
 ./usr/share/man/man7/des_modes.7		man-reference-man	crypto,.man
 ./usr/share/man/man7/environ.7			man-reference-man	.man
+./usr/share/man/man7/glob.7			man-reference-man	.man
 ./usr/share/man/man7/hier.7			man-reference-man	.man
 ./usr/share/man/man7/hostname.7			man-reference-man	.man
 ./usr/share/man/man7/intro.7			man-reference-man	.man

Index: src/share/man/man7/Makefile
diff -u src/share/man/man7/Makefile:1.24 src/share/man/man7/Makefile:1.25
--- src/share/man/man7/Makefile:1.24	Tue Nov 30 20:50:28 2010
+++ src/share/man/man7/Makefile	Tue Nov 30 20:59:10 2010
@@ -1,9 +1,9 @@
-#	$NetBSD: Makefile,v 1.24 2010/11/30 20:50:28 jruoho Exp $
+#	$NetBSD: Makefile,v 1.25 2010/11/30 20:59:10 jruoho Exp $
 #	@(#)Makefile	8.1 (Berkeley) 6/5/93
 
 # missing: eqnchar.7 man.7 ms.7 term.7
 
-MAN=	ascii.7 c.7 environ.7 hier.7 hostname.7 intro.7 mailaddr.7 \
+MAN=	ascii.7 c.7 environ.7 glob.7 hier.7 hostname.7 intro.7 mailaddr.7 \
 	nls.7 operator.7 orders.7 pkgsrc.7 release.7  \
 	script.7 setuid.7 signal.7 sticky.7 symlink.7 sysctl.7 \
 	tests.7

Added files:

Index: src/share/man/man7/glob.7
diff -u /dev/null src/share/man/man7/glob.7:1.1
--- /dev/null	Tue Nov 30 20:59:11 2010
+++ src/share/man/man7/glob.7	Tue Nov 30 20:59:10 2010
@@ -0,0 +1,153 @@
+.\" $NetBSD: glob.7,v 1.1 2010/11/30 20:59:10 jruoho Exp $
+.\"
+.\"	$OpenBSD: glob.7,v 1.3 2009/12/26 15:24:54 schwarze Exp $
+.\"
+.\" Copyright (c) 2009 Todd C. Miller <todd.mil...@courtesan.com>
+.\"
+.\" Permission to use, copy, modify, and distribute this software for any
+.\" purpose with or without fee is hereby granted, provided that the above
+.\" copyright notice and this permission notice appear in all copies.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.Dd November 30, 2010
+.Dt GLOB 7
+.Os
+.Sh NAME
+.Nm glob
+.Nd shell-style pattern matching
+.Sh DESCRIPTION
+Globbing characters
+.Pq wildcards
+are special characters used to perform pattern matching of pathnames and
+command arguments in the
+.Xr csh 1 ,
+.Xr ksh 1 ,
+and
+.Xr sh 1
+shells as well as
+the C library functions
+.Xr fnmatch 3
+and
+.Xr glob 3 .
+A glob pattern is a word containing one or more unquoted
+.Ql \&?
+or
+.Ql *
+characters, or
+.Dq [..]
+sequences.
+.Pp
+Globs should not be confused with the more powerful
+regular expressions used by programs such as
+.Xr grep 1 .
+While there is some overlap in the special characters used in regular
+expressions and globs, their meaning is different.
+.Pp
+The pattern elements have the following meaning:
+.Bl -tag -width Ds
+.It \&?
+Matches any single character.
+.It \&*
+Matches any sequence of zero or more characters.
+.It [..]
+Matches any of the characters inside the brackets.
+Ranges of characters can be specified by separating two characters by a
+.Ql -
+(e.g.\&
+.Dq [a0-9]
+matches the letter
+.Sq a
+or any digit).
+In order to represent itself, a
+.Ql -
+must either be quoted or the first or last character in the character list.
+Similarly, a
+.Ql \&]
+must be quoted or the first character in the list if it is to represent itself
+instead of the end of the list.
+Also, a
+.Ql \&!
+appearing at the start of the list has special meaning (see below), so to
+represent itself it must be quoted or appear later in the list.
+.Pp
+Within a bracket expression, the name of a
+.Em character class
+enclosed in
+.Sq [:
+and
+.Sq :]
+stands for the list of all characters belonging to that class.
+Supported character classes:
+.Bl -column "xdigit" "xdigit" "xdigit" -offset indent
+.It Li "alnum" Ta "cntrl" Ta "lower" Ta "space"
+.It Li "alpha" Ta "digit" Ta "print" Ta "upper"
+.It Li "blank" Ta "graph" Ta "punct" Ta "xdigit"
+.El
+.Pp
+These match characters using the macros specified in
+.Xr ctype 3 .
+A character class may not be used as an endpoint of a range.
+.It [!..]
+Like [..],
+except it matches any character not inside the brackets.
+.It \e
+Matches the character following it verbatim.
+This is useful to quote the special characters
+.Ql \&? ,
+.Ql \&* ,
+.Ql \&[ ,
+and
+.Ql \e
+such that they lose their special meaning.
+For example, the pattern
+.Dq \e\e\e\&*\e[x]\e\&?
+matches the string
+.Dq \e\&*[x]\&? .
+.El
+.Pp
+Note that when matching a pathname, the path separator
+.Ql / ,
+is not matched by a
+.Ql \&? ,
+or
+.Ql * ,
+character or by a
+.Dq [..]
+sequence.
+Thus,
+.Pa /usr/*/*/X11
+would match
+.Pa /usr/X11R6/lib/X11
+and
+.Pa /usr/X11R6/include/X11
+while
+.Pa /usr/*/X11
+would not match either.
+Likewise,
+.Pa /usr/*/bin
+would match
+.Pa /usr/local/bin
+but not
+.Pa /usr/bin .
+.Sh SEE ALSO
+.Xr fnmatch 3 ,
+.Xr glob 3 ,
+.Xr re_format 7
+.Sh HISTORY
+In early versions of
+.Ux ,
+the shell did not do pattern expansion itself.
+A dedicated program,
+.Pa /etc/glob ,
+was used to perform the expansion and pass the results to a command.
+In
+.At v7 ,
+with the introduction of the Bourne shell,
+this functionality was incorporated into the shell itself.

Reply via email to