What you have tried cannot work.

When you use backticks you get control back only AFTER the command has finished, which of course is too late for your purpose.

Expect should be what you need, something like:

use strict; use Expect; my $ex = Expect->spawn(undef, "Command foo") or die $! $ex->expect(undef, "-re", "Do you want to read the file"); $ex->send("1\n");
This spawns your command in parallel to your script and waits for your prompt to appear. It then sends a "1" back to the command, simulating a user input (depending on how your command reads it's input you may or may not have to send the newline - you have to experiment there).

If you want you can add a timeout as the first parameter to the expect-call (undef means wait forever for the pattern to appear which may or may not be what you want).


In reply to Re: automatically giving user input to a command line by morgon
in thread automatically giving user input to a command line by tfredett

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.