Cool, the * is by reference.
Thanks,
Ben
On 22/06/07, Paul Lalli [EMAIL PROTECTED] wrote:
On Jun 22, 5:57 am, [EMAIL PROTECTED] (Ben Edwards) wrote:
I am opening a log file:
open( LOGFILE, cronlog.txt );
This is being written to in lots of places.
I have been asked to change the program so if -m (manual) flag is
passed the stuff that goes to the log file is send to standard out
instead. Is it possible to change the above command to redirect
LOGFILE to STDOUT (i.e. make the two the same thing.
i.e.
if ( defined( $opt_m ) ) {
open( LOGFILE, STDOUT );} else {
open( LOGFILE, cronlog.txt );
}
I even tried:
LOGFILE = STDOUT;
But I get:
Bareword STDOUT not allowed while strict subs in use
Whjenever I try to use STDOUT;(
Because this is the equivalent of saying
LOGFILE = STDOUT;
which obviously makes no sense, so by using strict such things are
prevented.
You can however assign the typeglob *LOGFILE to *STDOUT:
if (defined( $opt_m) ) {
*LOGFILE = *STDOUT;
}
Paul Lalli
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/
--
Ben Edwards - Bristol, UK
If you have a problem emailing me use
http://www.gurtlush.org.uk/profiles.php?uid=4
(email address this email is sent from may be defunct)
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/