File::DosGlob(3)

File::DosGlob(3)

File::Copy Home Page Subroutines Index File::Find


NNAAMMEE
       File::DosGlob - DOS like globbing and then some

       perlglob.bat - a more capable perlglob.exe replacement

SSYYNNOOPPSSIISS
           require 5.004;

           # override CORE::glob in current package
           use File::DosGlob 'glob';

           @perlfiles = glob  "..\\pe?l/*.p?";
           print <..\\pe?l/*.p?>;

           # from the command line (overrides only in main::)
           > perl -MFile::DosGlob=glob -e "print <../pe*/*p?>"

           > perlglob ../pe*/*p?

DDEESSCCRRIIPPTTIIOONN
       A module that implements DOS-like globbing with a few
       enhancements.  This file is also a portable replacement
       for perlglob.exe.  It is largely compatible with
       perlglob.exe (the M$ setargv.obj version) in all but one
       respect--it understands wildcards in directory components.

       For example, C<<..\\l*b\\file/*glob.p?>> will work as
       expected (in that it will find something like
       '..\lib\File/DosGlob.pm' alright).  Note that all path
       components are case-insensitive, and that backslashes and
       forward slashes are both accepted, and preserved.  You may
       have to double the backslashes if you are putting them in
       literally, due to double-quotish parsing of the pattern by
       perl.

       When invoked as a program, it will print null-separated
       filenames to standard output.

       While one may replace perlglob.exe with this, usage by
       overriding CORE::glob via importation should be much more
       efficient, because it avoids launching a separate process,
       and is therefore strongly recommended.  Note that it is
       currently possible to override builtins like glob() only
       on a per-package basis, not "globally".  Thus, every
       namespace that wants to override glob() must explicitly
       request the override.  See the perlsub manpage.

       Extending it to csh patterns is left as an exercise to the
       reader.

EEXXPPOORRTTSS ((bbyy rreeqquueesstt oonnllyy))
       glob()

BBUUGGSS
       Should probably be built into the core, and needs to stop
       pandering to DOS habits.  Needs a dose of optimizium too.

AAUUTTHHOORR
       Gurusamy Sarathy lt;gsar@umich.edu

HHIISSTTOORRYY
       +o   Scalar context, independent iterator context fixes
           (GSAR 15-SEP-97)

       +o   A few dir-vs-file optimizations result in glob
           importation being 10 times faster than using
           perlglob.exe, and using perlglob.bat is only twice as
           slow as perlglob.exe (GSAR 28-MAY-97)

       +o   Several cleanups prompted by lack of compatible
           perlglob.exe under Borland (GSAR 27-MAY-97)

       +o   Initial version (GSAR 20-FEB-97)

SSEEEE AALLSSOO
       perl

File::Copy Home Page Subroutines Index File::Find