08-04-2008
perl: howto print to screen & filehandle
Hello,
I need to print messages both to screen and to file handle in perl , like tee does in unix .
Any suggestions ?
Thanks
10 More Discussions You Might Find Interesting
1. Programming
While working with russian text under FreeBSD&MySQL I need to convert a string from MySQL to the Unicode format.
I've just started my way in C++ under FreeBSD , so please explain me how can I get ascii code of Char variable and also how can i get a character into variable with the specified ascii... (3 Replies)
Discussion started by: macron
3 Replies
2. Shell Programming and Scripting
as the title suggests, i need to print a user message to a log file and the screen using perl.
in unix i set up a function using 'tee' like so
function Display_Message
{
echo "$*" | tee -ai $LOGFILE
}
the following command then obviously displays to the screen and prints to a log... (6 Replies)
Discussion started by: mjays
6 Replies
3. AIX
Hi all,
Could you please tell me how to take a screenshot in aix (like Print Screen button in windows)?
Thanks (7 Replies)
Discussion started by: prashantchavan
7 Replies
4. Shell Programming and Scripting
I have two perl functions defined, both run a set of shell commands on some somplied data and return hashs of the resulting parsed output from these shell commands.
One works, one doesn't and I can't seem to see why. It's driving me insane :mad:
The working one:
sub getcellstatus {
... (8 Replies)
Discussion started by: Smiling Dragon
8 Replies
5. Solaris
Can anyone tell me what to look for in terms of abnormal numbers on vmstat or iostat?
I have a box with figures pbelow, how would I tell if it's underperforming & what remedies \ perfomance tuning could I perform?
thanks all
-------------------------------------
-vmstat 5 5
kthr ... (4 Replies)
Discussion started by: stevie_velvet
4 Replies
6. Shell Programming and Scripting
I'm trying to clean up my samba share and need to print the found file or print the path of the image it tried to searched for. So far I have this but can't seem to get the logic right. Can anyone help point me in the right direction?
for FILE in `cat list`; do
if ;
then
... (1 Reply)
Discussion started by: overkill
1 Replies
7. Shell Programming and Scripting
cat a | awk -F";" '{print "update db set column=' "$2" ' where column1=\""$1"\";"}' > ip-add.sql
Hi! I'm a new user!
i need to use single quote in the double quotes print string
The apex between che "$2" should not be interpreted, but....how?!
I'm trying to use \ but don't work correctly!
... (4 Replies)
Discussion started by: Re DeL SiLeNziO
4 Replies
8. Shell Programming and Scripting
Hi Guru's,
Pardon me for the breach of rules.....
I have very little knowledge about Shell Programming and Scripting hope you guys help me out of this troble
I have very little time hence could not find the right way to direct my queries.
coming to the problem
I need to call a... (2 Replies)
Discussion started by: saikrishna_tung
2 Replies
9. Programming
Hi,
i have run the below perl code and i am getting an error
Error:readline() on closed filehandle OR at run.pl line 31.
CODE:
===========================================
open OR,$ARGV;
while (<OR>) { # find the batch date
next if length $_ < 3; # BLANK LINE
# last if $. > 120; #... (3 Replies)
Discussion started by: pspriyanka
3 Replies
10. Shell Programming and Scripting
Hi
we have one function which is used to append data the file in exclusive lock mode in aperl script.
This script is executed by multiple threads at the same time.
accessing the same file.this script runs throught the day.
sometimes the file2.txt size is getting reduced.
for eg from 10 M... (1 Reply)
Discussion started by: Shahul
1 Replies
LEARN ABOUT DEBIAN
io::tee
Tee(3pm) User Contributed Perl Documentation Tee(3pm)
NAME
IO::Tee - Multiplex output to multiple output handles
SYNOPSIS
use IO::Tee;
$tee = IO::Tee->new($handle1, $handle2);
print $tee "foo", "bar";
my $input = <$tee>;
DESCRIPTION
"IO::Tee" objects can be used to multiplex input and output in two different ways. The first way is to multiplex output to zero or more
output handles. The "IO::Tee" constructor, given a list of output handles, returns a tied handle that can be written to. When written to
(using print or printf), the "IO::Tee" object multiplexes the output to the list of handles originally passed to the constructor. As a
shortcut, you can also directly pass a string or an array reference to the constructor, in which case "IO::File::new" is called for you
with the specified argument or arguments.
The second way is to multiplex input from one input handle to zero or more output handles as it is being read. The "IO::Tee" constructor,
given an input handle followed by a list of output handles, returns a tied handle that can be read from as well as written to. When
written to, the "IO::Tee" object multiplexes the output to all handles passed to the constructor, as described in the previous paragraph.
When read from, the "IO::Tee" object reads from the input handle given as the first argument to the "IO::Tee" constructor, then writes any
data read to the output handles given as the remaining arguments to the constructor.
The "IO::Tee" class supports certain "IO::Handle" and "IO::File" methods related to input and output. In particular, the following methods
will iterate themselves over all handles associated with the "IO::Tee" object, and return TRUE indicating success if and only if all
associated handles returned TRUE indicating success:
close
truncate
write
syswrite
format_write
formline
fcntl
ioctl
flush
clearerr
seek
The following methods perform input multiplexing as described above:
read
sysread
readline
getc
gets
eof
getline
getlines
The following methods can be used to set (but not retrieve) the current values of output-related state variables on all associated handles:
autoflush
output_field_separator
output_record_separator
format_page_number
format_lines_per_page
format_lines_left
format_name
format_top_name
format_line_break_characters
format_formfeed
The following methods are directly passed on to the input handle given as the first argument to the "IO::Tee" constructor:
input_record_separator
input_line_number
Note that the return value of input multiplexing methods (such as "print") is always the return value of the input action, not the return
value of subsequent output actions. In particular, no error is indicated by the return value if the input action itself succeeds but
subsequent output multiplexing fails.
EXAMPLE
use IO::Tee;
use IO::File;
my $tee = new IO::Tee(*STDOUT,
new IO::File(">tt1.out"), ">tt2.out");
print join(' ', $tee->handles), "
";
for (1..10) { print $tee $_, "
" }
for (1..10) { $tee->print($_, "
") }
$tee->flush;
$tee = new IO::Tee('</etc/passwd', *STDOUT);
my @lines = <$tee>;
print scalar(@lines);
AUTHOR
Chung-chieh Shan, ken@digitas.harvard.edu
COPYRIGHT
Copyright (c) 1998-2001 Chung-chieh Shan. All rights reserved. This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
SEE ALSO
perlfunc, IO::Handle, IO::File.
perl v5.12.3 2001-03-10 Tee(3pm)