The first one: my $archive = glob qq($base.Gridfee0?.7z\\); I need to use a wildcard, there are 7 zipfiles named 'Gridfee01' up to 'Gridfee07' which i need to get through.
Don't include a trailing "/" in $base or in the glob.
my $archive = glob qq($base/Gridfee0?.7z);
The second one: my @files = glob qq($base\\Gridfee0?.7z\\Gridfee?\\invoic_b2c_$year$month$day*.txt); Need to use several wildcards here (? twice and a *) and the glob qq() thing is the easiest way that has worked for me until now.
The wildcard glob pattern should only be at the end of the "filespec". You cannot expect this to work with multiple wildcards in the "path". There are at least 3 versions of glob() that I have encountered. If you are using glob, keep what it does as simple as possible and use grep{} to further refine the search. You will need to code a loop here or use another method. Do not expect glob() to do implict looping. For the end target, I would use *.txt and use grep{} to filter out files which do not match /_(\d+)\.txt$/. Looping at multiple levels for $year$month$day*.txt makes no sense. Get all .txt files at one "go" and then filter as needed.

In reply to Re^2: Extracting files from .7z using Perl by Marshall
in thread Extracting files from .7z using Perl by zarath

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.