Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Heredoc with system call

by diotalevi (Canon)
on Dec 18, 2008 at 04:53 UTC ( [id://731157]=note: print w/replies, xml ) Need Help??


in reply to Heredoc with system call

Are you sure you answered your own question? It looked like you wanted to pipe some data to the STDIN of the lsnrctl program (whatever that is).

PS, you should be looking at $?, not $!. $! is for system calls, not the function which happens to be called "system."

#!/usr/bin/perl -w use strict; system("lsnrctl <<\"EOF\" set password 'oracle' set current_listener 'LISTENER' status EOF ") == 0 or die "Couldn't run listener control: $?"; system($command)==0 or die "couldn't run listener control: $!";

⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

Replies are listed 'Best First'.
Re^2: Heredoc with system call
by curtisb (Monk) on Dec 18, 2008 at 05:14 UTC
    I can see what you are saying, but when I tried your code, I got this error;
    system("lsnrctl <<\"EOF\" set password oracle set current_listener LISTENER status EOF ") == 0 or die "Couldn't run listener control: $?";

    << was unexpected at this time. Couldn't run listener control: 256 at C:\heredoc_test.pl line 4.

    Bobby

      Oh, right. What I wrote would be valid for something like a bash shell but not for anything on Windows where it doesn't understand anything like heredocs. Since win32 perl only pretends to use fork, I found myself quickly unable to write a native CreateProcess call and then write to its stdin. I dunno. I'm just not a Windows programmer.

      ⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others wandering the Monastery: (9)
As of 2024-03-29 21:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found