Someone calling themselves newbie01.perl is really kind of dubious,
couldn't you have made up a more fun nomme de guerre, like "Olyve
Crudite"? I'm going to pretend you did.

Olyve --

>>    print << `EOL`;
>>    sqlplus -S "/as sysdba" <<SQLEND

the backslashes around the heredoc termination marker indicate that
what is printed is going to be the output of an external script.  That
external script also includes a heredoc.

One way to revise this so it relies on shell features common to the
shells on more platforms might be

    open SQLPLUS, '|sqlplus -S "/as sysdba" > sqlplusoutput.tmp' or die $!;
    print SQLPLUS <<SQLEND;
      ...
    SQLEND
    close SQLPLUS;
    open TMP, '<sqlplusoutput.tmp' or die $!;
    print (<TMP>); close TMP; unlink 'sqlplusoutput.tmp';


Shlomi wrote:

> The <<SQLEND here document is parsed and executed by the UNIX shell, and it is
> not supported on the Win32 excuse for a shell called CMD.EXE. You can try
> doing it using cygwin or something if that is an option or alternatively
> writing these command to a file first and then loading it using
> "< input-file.txt" which is more portable.

That of course would work too. There are many ways to do this. And if
there are a lot of these things, running them all with cygwin might be
less painful than editing each of them. But if you're going to do
that, why not simply install Linux, perhaps in a VM? Please don't
answer, that's a rhetorical question.


dln


-- 
I like to think that when I ramble on, I'm speaking for others who
share my opinions or point of view but who aren't as expressive.

--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to