Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re^3: How to call a script interactively from perl

by zentara (Archbishop)
on Oct 16, 2012 at 11:07 UTC ( [id://999285]=note: print w/replies, xml ) Need Help??


in reply to Re^2: How to call a script interactively from perl
in thread How to call a script interactively from perl

You have me confused. How can you terminate the script in a way that allows it to output to a file? You need to describe in exact detail how this third party script runs. Maybe you are looking to put the process in the background, i.e. a background process?

I'm not really a human, but I play one on earth.
Old Perl Programmer Haiku ................... flash japh
  • Comment on Re^3: How to call a script interactively from perl

Replies are listed 'Best First'.
Re^4: How to call a script interactively from perl
by LetMeAsk (Initiate) on Oct 16, 2012 at 14:34 UTC
    I am sorry to confuse you, ok here i go again: There is an existing script (Lets call it ThirdPartyScript and i cannot do any modifications to it) which performs some processing and displays output on the STDOUT and at the end it asks for options. For example, when you provide an option "i" it means include flag and you can specify any search string. It then retrieves the results matching that search string from its database and after displaying those results it again wait for next action with the following prompt:
    Select option:
    Now, either you can provide next option as i (to include other search string or "d" to delete the listed results etc or "X" to quit script. Now, i am writing a perl script with the intention to run above thirdpartyscript with a specific search string from this perl code and write the result of this run to a unix file. Then again my perl code will email this output file to the interested parties. My perl code works fine when i run that for any other command (e.g. ls), but when i run that for the above third party script, it never completes execution and the output file never populated. So, i thought may be it is because the thirdpartyscript do not exit execution until an "x" is specified as explained above. Please let me know if it helps. Thanks

      Hi!

      This sounds to me like your ThirdPartyScript handles the input from a console/terminal which is a little bit differnet than reading from STDIN. If this is the case then have a look at Expect.pm.

      Best regards
      McA

        Thanks i read about Expect.pm and looks like it can help but do you think there is nay other solution to this (within Perl)? as i do not have Expect.pm installed on my production systems.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://999285]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others rifling through the Monastery: (5)
As of 2024-04-24 08:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found