Hello Monks,

I want to write a script that extracts files in directories and their subdirectories recursively.I have used File::Find module to use wanted() subroutine to extract files recursively.While it recursively extracts,some duplicate files are appearing and asking for prompt to replace or rename. Here is the example prompt.

replace META-INF/MANIFEST.MF? [y]es, [n]o, [A]ll, [N]one, [r]ename:

Every time it appears,script has to send "A" reply to the prompt and it has to continue as i need to extract hundreds of files and get the required file.Can any one give me suggestions on how to write this using perl Expect?

Here is my code which uses File::Find module to find files recursively and perform some actions.

find( { wanted => \&wanted, }, @dirs); sub wanted { my $depth = $File::Find::dir =~ tr[/][]; return if $depth < $min_depth; if ( $File::Find::name =~ m/.zip$|file.*?$/ ) { print "I am extracting zip file : $File::Find::name\n"; &execute_command("unzip $File::Find::name"); #At this point it asks for prompt,i need to make it accept reply +automatically. #execute_command is a subroutine written in another module which +uses fork and exec to execute a shell command. elsif ( $File::Find::name =~ m/.gz$/ ) { &execute_command("gunzip $File::Find::name"); } }

Your help is much appreciated.


In reply to Need help on perl Expect Module by sriram83.life

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.