diff options
author | 2009-03-05 15:13:30 +0000 | |
---|---|---|
committer | 2009-03-05 15:13:30 +0000 | |
commit | dcd8b01346aa463f0304e67b2c5c04da39e101f2 (patch) | |
tree | 9da58a9d1ff6860afe263f7e5ec8051b5c84bade /share/man/man7 | |
parent | DOMAINNNAME -> DOMAINNAME; (diff) | |
download | wireguard-openbsd-dcd8b01346aa463f0304e67b2c5c04da39e101f2.tar.xz wireguard-openbsd-dcd8b01346aa463f0304e67b2c5c04da39e101f2.zip |
Add glob(7) and refer to it. OK jmc@ sobrado@
Diffstat (limited to 'share/man/man7')
-rw-r--r-- | share/man/man7/Makefile | 8 | ||||
-rw-r--r-- | share/man/man7/glob.7 | 139 |
2 files changed, 143 insertions, 4 deletions
diff --git a/share/man/man7/Makefile b/share/man/man7/Makefile index b881c334989..29db1650d7f 100644 --- a/share/man/man7/Makefile +++ b/share/man/man7/Makefile @@ -1,11 +1,11 @@ -# $OpenBSD: Makefile,v 1.13 2005/05/12 09:12:57 jmc Exp $ +# $OpenBSD: Makefile,v 1.14 2009/03/05 15:13:30 millert Exp $ # $NetBSD: Makefile,v 1.6 1994/12/22 10:50:05 cgd Exp $ # missing: eqnchar.7 man.7 ms.7 term.7 -MAN= ascii.7 environ.7 hier.7 hostname.7 intro.7 kgdb.7 library-specs.7 \ - mailaddr.7 mdoc.7 mdoc.samples.7 mirroring-ports.7 operator.7 \ - packages.7 packages-specs.7 ports.7 script.7 securelevel.7 +MAN= ascii.7 environ.7 glob.7 hier.7 hostname.7 intro.7 kgdb.7 \ + library-specs.7 mailaddr.7 mdoc.7 mdoc.samples.7 mirroring-ports.7 \ + operator.7 packages.7 packages-specs.7 ports.7 script.7 securelevel.7 MLINKS= mdoc.7 mandoc.7 mdoc.samples.7 mandoc.samples.7 \ mirroring-ports.7 mirror-maker.7 diff --git a/share/man/man7/glob.7 b/share/man/man7/glob.7 new file mode 100644 index 00000000000..ab6067b8ded --- /dev/null +++ b/share/man/man7/glob.7 @@ -0,0 +1,139 @@ +.\" $OpenBSD: glob.7,v 1.1 2009/03/05 15:13:30 millert Exp $ +.\" +.\" Copyright (c) 2009 Todd C. Miller <Todd.Miller@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 $Mdocdate: March 5 2009 $ +.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. +.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 incorportated into the shell itself. |