glob man page on Alpinelinux

Man page or keyword search:  
man Server   18016 pages
apropos Keyword Search (all sections)
Output format
Alpinelinux logo
[printable version]

glob(n)			     Tcl Built-In Commands		       glob(n)

______________________________________________________________________________

NAME
       glob - Return names of files that match patterns

SYNOPSIS
       glob ?switches? ?pattern ...?
_________________________________________________________________

DESCRIPTION
       This  command performs file name “globbing” in a fashion similar to the
       csh shell or bash shell.	 It returns a list of the  files  whose	 names
       match  any  of the pattern arguments. No particular order is guaranteed
       in the list, so if a sorted list is  required  the  caller  should  use
       lsort.

   OPTIONS
       If  the initial arguments to glob start with - then they are treated as
       switches. The following switches are currently supported:

       -directory directory
	      Search for files which match the given patterns starting in  the
	      given directory. This allows searching of directories whose name
	      contains glob-sensitive characters without  the  need  to	 quote
	      such  characters explicitly. This option may not be used in con‐
	      junction with -path, which is used to allow searching  for  com‐
	      plete  file paths whose names may contain glob-sensitive charac‐
	      ters.

       -join  The remaining pattern arguments, after  option  processing,  are
	      treated  as  a  single pattern obtained by joining the arguments
	      with directory separators.

       -nocomplain
	      Allows an empty list to be returned without error; without  this
	      switch an error is returned if the result list would be empty.

       -path pathPrefix
	      Search for files with the given pathPrefix where the rest of the
	      name matches the given patterns. This allows searching for files
	      with  names  similar to a given file (as opposed to a directory)
	      even when the  names  contain  glob-sensitive  characters.  This
	      option may not be used in conjunction with -directory. For exam‐
	      ple, to find all files with the same root	 name  as  $path,  but
	      differing	 extensions, you should use “glob -path [file rootname
	      $path] .*”  which will work  even	 if  $path  contains  numerous
	      glob-sensitive characters.

       -tails Only  return  the part of each file found which follows the last
	      directory named in any -directory or -path  path	specification.
	      Thus  “glob  -tails -directory $dir *” is equivalent to “set pwd
	      [pwd]; cd $dir; glob *; cd $pwd”.	 For -path specifications, the
	      returned	names  will  include  the  last path segment, so “glob
	      -tails -path [file rootname ~/foo.tex] .*”   will	 return	 paths
	      like foo.aux foo.bib foo.tex etc.

       -types typeList
	      Only  list  files or directories which match typeList, where the
	      items in the list have two forms. The first  form	 is  like  the
	      -type option of the Unix find command: b (block special file), c
	      (character special file), d (directory), f (plain file), l (sym‐
	      bolic link), p (named pipe), or s (socket), where multiple types
	      may be specified in the list.  Glob will return all files	 which
	      match at least one of the types given.  Note that symbolic links
	      will be returned both if -types l is given, or if the target  of
	      a	 link  matches	the  requested type. So, a link to a directory
	      will be returned if -types d was specified.

	      The second form specifies types where all the types  given  must
	      match.   These  are  r,  w, x as file permissions, and readonly,
	      hidden as special permission  cases.  On	the  Macintosh,	 MacOS
	      types  and  creators are also supported, where any item which is
	      four characters long is assumed to be a MacOS type (e.g.	TEXT).
	      Items  which are of the form {macintosh type XXXX} or {macintosh
	      creator XXXX} will match types or creators respectively.	Unrec‐
	      ognized  types,  or  specifications of multiple MacOS types/cre‐
	      ators will signal an error.

	      The two forms may be mixed, so -types {d f r w}  will  find  all
	      regular  files OR directories that have both read AND write per‐
	      missions.	 The following are equivalent:

		     glob -type d *
		     glob */

	      except that the first case doesn't return the trailing  “/”  and
	      is more platform independent.

       --     Marks  the end of switches. The argument following this one will
	      be treated as a pattern even if it starts with a -.

   GLOBBING PATTERNS
       The pattern arguments may contain any of the following special  charac‐
       ters, which are a superset of those supported by string match:

       ?	 Matches any single character.

       *	 Matches any sequence of zero or more characters.

       [chars]	 Matches  any  single  character in chars. If chars contains a
		 sequence of the form a-b then any character between a	and  b
		 (inclusive) will match.

       \x	 Matches the character x.

       {a,b,...} Matches any of the sub-patterns a, b, etc.

       On  Unix,  as with csh, a “.” at the beginning of a file's name or just
       after a “/” must be matched explicitly or with a {}  construct,	unless
       the -types hidden flag is given (since “.” at the beginning of a file's
       name indicates that it is hidden). On other platforms, files  beginning
       with a “.” are handled no differently to any others, except the special
       directories “.” and “..” which must be matched explicitly (this	is  to
       avoid  a	 recursive pattern like “glob -join * * * *” from recursing up
       the directory hierarchy as well as down). In addition, all “/”  charac‐
       ters must be matched explicitly.

       If  the	first character in a pattern is “~” then it refers to the home
       directory for the user whose name follows the “~”.  If the “~” is  fol‐
       lowed  immediately  by “/” then the value of the HOME environment vari‐
       able is used.

       The glob command differs from csh globbing in two ways.	First, it does
       not  sort  its  result list (use the lsort command if you want the list
       sorted).	 Second, glob only returns the names of	 files	that  actually
       exist;  in csh no check for existence is made unless a pattern contains
       a ?, *, or [] construct.

       When the glob command returns relative paths whose filenames start with
       a  tilde	 “~”  (for example through glob * or glob -tails, the returned
       list will not quote the tilde with “./”.	 This means care must be taken
       if those names are later to be used with file join, to avoid them being
       interpreted as absolute paths pointing to a given  user's  home	direc‐
       tory.

WINDOWS PORTABILITY ISSUES
       For  Windows  UNC names, the servername and sharename components of the
       path may not contain ?, *, or [] constructs. On Windows NT, if  pattern
       is  of  the form “~username@domain”, it refers to the home directory of
       the user whose account information resides on the specified  NT	domain
       server.	Otherwise, user account information is obtained from the local
       computer. On Windows 95 and 98, glob accepted patterns like “.../”  and
       “..../”	for  successively higher up parent directories, but later ver‐
       sions of Windows do not accept these forms.

       Since the backslash character has a special meaning to  the  glob  com‐
       mand,  glob patterns containing Windows style path separators need spe‐
       cial care. The pattern “C:\\foo\\*” is interpreted as “C:\foo\*”	 where
       “\f” will match the single character “f” and “\*” will match the single
       character “*” and will not be interpreted as a wildcard character.  One
       solution	 to  this  problem is to use the Unix style forward slash as a
       path separator. Windows style paths can	be  converted  to  Unix	 style
       paths with the command “file join $path” or “file normalize $path”.

EXAMPLES
       Find all the Tcl files in the current directory:

	      glob *.tcl

       Find  all  the  Tcl files in the user's home directory, irrespective of
       what the current directory is:

	      glob -directory ~ *.tcl

       Find all subdirectories of the current directory:

	      glob -type d *

       Find all files whose name contains an “a”, a “b” or the sequence “cde”:

	      glob -type f *{a,b,cde}*

SEE ALSO
       file(n)

KEYWORDS
       exist, file, glob, pattern

Tcl				      8.3			       glob(n)
[top]

List of man pages available for Alpinelinux

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net