11-21-2007
perl -e 'while (<>)
{
print;
$num = 2 if /fail_halt/i;
$num = 1 if (/failure/i && ($num < 1));
}
print $num
exit $num;'
-e is a command line option
for example on terminal you can say perl -e 'print "Hello World\n";'
while(<>)
while is loop present in most languages u must be knowing and (<>) means it is reading standard input line by line
print;
meand it will standard input scalar i.e. $_ means the line itself which it reads
$num = 2 if /fail_halt/i;
setting the value of variable $num to 2 if line contains word "fail_halt" and i option is for ignoring the case of letters (FAIL_HALT or fail_HaLt)
$num = 1 if (/failure/i && ($num < 1));
setting the value of variable $num to 1 if line contains failure word
In last print $num and exit
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I the the following perl script, however it does not return anything. Did i form my syantax wrongly?
$sth=$dbh->prepare("select a.rowid,a.* from Table1 a
where a.field1 = \'$Indicator1\'
and a.schedule = \'$Indicator2\' and a.lastdate <= sysdate");
$sth->execute() ... (1 Reply)
Discussion started by: new2ss
1 Replies
2. Shell Programming and Scripting
Hi All,
This is quite a high level question so I appologise as if it sounds a bit woolly!
I'm running a script via apache's cgi-bin that calls another Perl script (from a browser):
http://192.168.000.000/cgi-bin/run_script.pl?SCRIPT=test.pl&text=RANDOM+TEXT&INPUT1=444444444444
This... (4 Replies)
Discussion started by: pondlife
4 Replies
3. Shell Programming and Scripting
a file test.dat has the following
David Veterinarian
John Orthopedist
Jeff Dentist
perl -p -e "s/\s*(\w+).*/$1/;" test.dat ......will print
David
Jonh
Jeff
how does the part in double quotes work out.... (1 Reply)
Discussion started by: bishweshwar
1 Replies
4. UNIX and Linux Applications
Guys,
I guess, I posted something in the wrong forum. Here it is -
https://www.unix.com/shell-programming-scripting/67395-perl-postgrepsql-question.html
Can you please help me with this?
Regards,
garric (0 Replies)
Discussion started by: garric
0 Replies
5. Shell Programming and Scripting
Hello people.
I have got the following script
QM=ARGV;
open (CHS_OUT, "echo 'DISPLAY QSTATUS(SYSTEM.CLUSTER.MY.QUEUE) all'|runmqsc $qm|");
while (<CHS_OUT>)
{
if ( /QUEUE\(/ )
{
$QueueName = ValueParser("QUEUE", 6);
}
if ( /IPPROCS\(/ )
{
$InpProcs = ValueParser("IPPROCS", 8);
#print... (3 Replies)
Discussion started by: King Nothing
3 Replies
6. Shell Programming and Scripting
When i run script with option 1 it works, however if I assign path to variable $tmpfile and try to use that it writes to $tmpfile and not /var/tmp/abc.tmp, what am I missing?
1.
open (CAPTURE, '>>tmpfile');
print CAPTURE "$T1,$T2,$T3";
close (CAPTURE);
2.
my $tmpfile='/var/tmp/abc.tmp';... (10 Replies)
Discussion started by: gefa
10 Replies
7. Shell Programming and Scripting
Hi,
I am new to perl.How to query oracle database with perl???
Thanks (1 Reply)
Discussion started by: tdev457
1 Replies
8. Shell Programming and Scripting
Hi ,
I am facing error in perl
when I assign a below query in a varibale $query because of new line charchters
$query=
SELECT XYZ
, ABC
, c2
, c3
, c4
FROM t1
how can i get rid of new line charchters with out changing the... (2 Replies)
Discussion started by: gvk25
2 Replies
9. Programming
Hi ,
Im using the below script to find the Good and Bad for the file permission.
$rc=`find /etc/security/opasswd -perm 0600 -print -ls`;
if($rc == 1)
{
print "GOOD: AD.1.8.4.1: The file /etc/security/opasswd exists and had permission 0600\n\n";
... (6 Replies)
Discussion started by: gsiva
6 Replies
10. Shell Programming and Scripting
I have tried executing one particular query through perl.But I am unable to get the result. When I tried to execute the sysdate query its working when I executed my perl code.
The below query doesn't work.
QUERY 1:my $sql ="select name from tab where rownum <6";
Received ora error... (23 Replies)
Discussion started by: ramkumar15
23 Replies
LEARN ABOUT SUSE
tap::parser::source::perl
TAP::Parser::Source::Perl(3pm) Perl Programmers Reference Guide TAP::Parser::Source::Perl(3pm)
NAME
TAP::Parser::Source::Perl - Stream Perl output
VERSION
Version 3.17
SYNOPSIS
use TAP::Parser::Source::Perl;
my $perl = TAP::Parser::Source::Perl->new;
my $stream = $perl->source( [ $filename, @args ] )->get_stream;
DESCRIPTION
Takes a filename and hopefully returns a stream from it. The filename should be the name of a Perl program.
Note that this is a subclass of TAP::Parser::Source. See that module for more methods.
METHODS
Class Methods
"new"
my $perl = TAP::Parser::Source::Perl->new;
Returns a new "TAP::Parser::Source::Perl" object.
Instance Methods
"source"
Getter/setter the name of the test program and any arguments it requires.
my ($filename, @args) = @{ $perl->source };
$perl->source( [ $filename, @args ] );
"croak"s if $filename could not be found.
"switches"
my $switches = $perl->switches;
my @switches = $perl->switches;
$perl->switches( @switches );
Getter/setter for the additional switches to pass to the perl executable. One common switch would be to set an include directory:
$perl->switches( ['-Ilib'] );
"get_stream"
my $stream = $source->get_stream($parser);
Returns a stream of the output generated by executing "source". Must be passed an object that implements a "make_iterator" method.
Typically this is a TAP::Parser instance.
"shebang"
Get the shebang line for a script file.
my $shebang = TAP::Parser::Source::Perl->shebang( $some_script );
May be called as a class method
"get_taint"
Decode any taint switches from a Perl shebang line.
# $taint will be 't'
my $taint = TAP::Parser::Source::Perl->get_taint( '#!/usr/bin/perl -t' );
# $untaint will be undefined
my $untaint = TAP::Parser::Source::Perl->get_taint( '#!/usr/bin/perl' );
SUBCLASSING
Please see "SUBCLASSING" in TAP::Parser for a subclassing overview.
Example
package MyPerlSource;
use strict;
use vars '@ISA';
use Carp qw( croak );
use TAP::Parser::Source::Perl;
@ISA = qw( TAP::Parser::Source::Perl );
sub source {
my ($self, $args) = @_;
if ($args) {
$self->{file} = $args->[0];
return $self->SUPER::source($args);
}
return $self->SUPER::source;
}
# use the version of perl from the shebang line in the test file
sub _get_perl {
my $self = shift;
if (my $shebang = $self->shebang( $self->{file} )) {
$shebang =~ /^#!(.*perl.*?)(?:(?:s)|(?:$))/;
return $1 if $1;
}
return $self->SUPER::_get_perl(@_);
}
SEE ALSO
TAP::Object, TAP::Parser, TAP::Parser::Source,
perl v5.12.1 2010-04-26 TAP::Parser::Source::Perl(3pm)