Re: Problem with glob and filenames containing '[' and ']'
- From: "Paul Lalli" <mritty@xxxxxxxxx>
- Date: 27 Sep 2006 07:26:28 -0700
David Squire wrote:
I'm having trouble using glob to find filenames that contain '[' and
']', even though I am escaping those meta-characters. Here is an example
script and output:
----
#!/usr/bin/perl
use strict;
use warnings;
use CGI::Deurl;
for my $EncodedFile (
'/damocles/documents/ENH1260/2006/2/Short
assignment/20331975_week9%5B1%5D.txt',
'/damocles/documents/ENH1260/2006/2/Short
assignment/20331975_week9.txt',
) {
my $OriginalFileBase = deurlstr($EncodedFile);
$OriginalFileBase =~ s/\.[^.]+$//; # trim extension
$OriginalFileBase =~ s/([\[\]{}?*~\ ,'`"])/\\$1/g; # escape
characters that are meta in glob;
print "\$OriginalFileBase = $OriginalFileBase\n";
my @CandidateOrigFiles = glob ("$OriginalFileBase*");
print "\@CandidateOrigFiles:\n", join "\n", @CandidateOrigFiles;
print "\n###########################################################\n";
}
----
Output:
Sep 27 - 9:31pm % ./test.pl
<ENTER THE CGI QUERY. End with CTRL+D>
$OriginalFileBase = /damocles/documents/ENH1260/2006/2/Short\
assignment/20331975_week9\[1\]
@CandidateOrigFiles:
###########################################################
$OriginalFileBase = /damocles/documents/ENH1260/2006/2/Short\
assignment/20331975_week9
@CandidateOrigFiles:
/damocles/documents/ENH1260/2006/2/Short
assignment/20331975_week9%5B1%5D.txt
/damocles/documents/ENH1260/2006/2/Short
assignment/20331975_week9%5B1%5D.txt.webbed
/damocles/documents/ENH1260/2006/2/Short assignment/20331975_week9[1].doc
###########################################################
Hmm. Not sure I know what to tell you, as I don't seem able to
reproduce the results....
$ ls filewith\[bracket\]*
filewith[bracket].txt
$ perl -le'print for glob(q{filewith\[bracket\].*})'
filewith[bracket].txt
This is perl, v5.8.4 built for sun4-solaris
Paul Lalli
.
- References:
- Problem with glob and filenames containing '[' and ']'
- From: David Squire
- Problem with glob and filenames containing '[' and ']'
- Prev by Date: Re: Problem with glob and filenames containing '[' and ']'
- Next by Date: Re: Problem with glob and filenames containing '[' and ']'
- Previous by thread: Re: Problem with glob and filenames containing '[' and ']'
- Next by thread: Re: Problem with glob and filenames containing '[' and ']'
- Index(es):
Relevant Pages
|