03-18-2008
Perl script to scan back lines
Hi Perl gurus,
I have this file to scan through. Sample lines below:
2008031A, USERNAME, 12345, give ABC, take XYZ, transaction submitted
2008031B, USERNAME, 12346, waiting for processing
2008031C, USERNAME, 12347, Retrieving response
2008031D, USERNAME, 12348, This is not a valid dealing
2008031E, USERNAME, 12349, State has failed
2008031F, USERNAME, 12350, System=0
2008031G, USERNAME, 12351, Waiting for new txns
2008031H, SOMEONE, 12352, give STE, take GVO, transaction submitted
2008031I, SOMEONE, 12353, waiting for processing
2008031J, SOMEONE, 12354, Retrieving response
2008031K, SOMEONE, 12355, This is not a valid dealing
2008031L, SOMEONE, 12356, State has failed
2008031M, SOMEONE, 12357, System=0
2008031N, SOMEONE, 12358, Waiting for new txns
I need to search for this pattern
-->
"This is not a valid dealing"
When one line found a match, it should write in the log the <UserName> as well as the give and take value (i.e. ABC, XYZ)
After scanning above file, error log should appear:
ERROR: USERNAME (ABC, XYZ)
ERROR: SOMEONE (STE, GVO)
Any ideas?
Thanks in advance guys.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi,
I am planning to implement a scheduled script that will go against my log files (every hour), search for a set of key words (errors, exceptions, faults etc). The script must be intelligent enough to scan only the new lines added to the log file since it last ran.
I can use grep for... (3 Replies)
Discussion started by: redlotus72
3 Replies
2. Shell Programming and Scripting
Dear perl gurus,
I plan to create a script that will scan through a logfile line by line.
And if ever a certain line meets the below conditions, it will alert me via email.
-->
a) Position 10 to 13 = "ABCD"
b) And also if the amount specified in position 620-640 is less than the amount in... (1 Reply)
Discussion started by: gholdbhurg
1 Replies
3. UNIX for Dummies Questions & Answers
Hi Guys,
I want to write a perl/shell script do parse the following file
input file content
NPA-NXX SC
2084549 45
2084552 45
2084563 2007
2084572 45
2084580 45
3278411 45
3278430 45
3278493 530
3278507 530... (3 Replies)
Discussion started by: pistachio
3 Replies
4. Shell Programming and Scripting
Hi Gurus,
I need some help with the "grep" command or whatever command that you think suitable for me. I'm about to write a perl script to extract a report from the system and submit it to the end users. The input for the script will consist of 3 element.
1) Generation ID
2) Month
3) Year... (6 Replies)
Discussion started by: miskin
6 Replies
5. Shell Programming and Scripting
I am working on this script, but hit a bump. Looking for a little help figuring out the last part:
open(MY_FILE, $ARGV) or die
$COUNTER = 1;
$LINE = <FILE>;
while ($LINE, <FILE>) {
# Adds leading zeros for numbers 1 digit long
if ($COUNTER<10){
print "000";
}
# Adds... (2 Replies)
Discussion started by: Breakology
2 Replies
6. Shell Programming and Scripting
Hello,
does somebody can make script for me, which replace:
ąćę
ąćę
ąćę
(input file)
to
ace;|;ąćę
ace;|;ąćę
ace;|;ąćę
(output file) (3 Replies)
Discussion started by: Xadrian
3 Replies
7. Shell Programming and Scripting
i have a file as below
sample.pl
parameter1
argument1
argument2
parameter2
I want out as below
argument1
argument2
that is , i want to print all the lines between parameter1 & parameter 2.
i tried with the following
if($mystring =~ m/parameter1(.*?)parameter2/) (2 Replies)
Discussion started by: roopa
2 Replies
8. Shell Programming and Scripting
Mysql log has something like below:
I need a bash shell script that will do the following:
1) The script will scan the mysql.log file constantly in real time (something like tail -F mysql.log)
2) If it encounters 5 consecutive identical lines then it would invoke some commands (say... (4 Replies)
Discussion started by: proactiveaditya
4 Replies
9. Shell Programming and Scripting
Hello all,
I have some .html files on my hard drive and trying to figure out (if it's possible) how to scan the files in the directory for <a> anchor tags to find linked files. I know how to bring the files in with Perl, but as text. Wondering if there's a way to probe the file for... (2 Replies)
Discussion started by: sldsand
2 Replies
10. Shell Programming and Scripting
Dear Perl users,
Could somebody help me how to fix my code so I can get my desired output.
Here is the data:
Pattern Gabriel
halo1
halo2
end
Pattern Andreas
halo1
halo2
endI want to grep multiple lines between the pattern /Pattern Gabriel / and /end/.
Then I will store the output into... (6 Replies)
Discussion started by: askari
6 Replies
LEARN ABOUT DEBIAN
plack::app::cgibin
Plack::App::CGIBin(3pm) User Contributed Perl Documentation Plack::App::CGIBin(3pm)
NAME
Plack::App::CGIBin - cgi-bin replacement for Plack servers
SYNOPSIS
use Plack::App::CGIBin;
use Plack::Builder;
my $app = Plack::App::CGIBin->new(root => "/path/to/cgi-bin")->to_app;
builder {
mount "/cgi-bin" => $app;
};
# Or from the command line
plackup -MPlack::App::CGIBin -e 'Plack::App::CGIBin->new(root => "/path/to/cgi-bin")->to_app'
DESCRIPTION
Plack::App::CGIBin allows you to load CGI scripts from a directory and convert them into a PSGI application.
This would give you the extreme easiness when you have bunch of old CGI scripts that is loaded using cgi-bin of Apache web server.
HOW IT WORKS
This application checks if a given file path is a perl script and if so, uses CGI::Compile to compile a CGI script into a sub (like
ModPerl::Registry) and then run it as a persistent application using CGI::Emulate::PSGI.
If the given file is not a perl script, it executes the script just like a normal CGI script with fork & exec. This is like a normal web
server mode and no performance benefit is achieved.
The default mechanism to determine if a given file is a Perl script is as follows:
o Check if the filename ends with ".pl". If yes, it is a Perl script.
o Open the file and see if the shebang (first line of the file) contains the word "perl" (like "#!/usr/bin/perl"). If yes, it is a Perl
script.
You can customize this behavior by passing "exec_cb" callback, which takes a file path to its first argument.
For example, if your perl-based CGI script uses lots of global variables and such and are not ready to run on a persistent environment, you
can do:
my $app = Plack::App::CGIBin->new(
root => "/path/to/cgi-bin",
exec_cb => sub { 1 },
)->to_app;
to always force the execute option for any files.
AUTHOR
Tatsuhiko Miyagawa
SEE ALSO
Plack::App::File CGI::Emulate::PSGI CGI::Compile Plack::App::WrapCGI
See also Plack::App::WrapCGI if you compile one CGI script into a PSGI application without serving CGI scripts from a directory, to remove
overhead of filesystem lookups, etc.
perl v5.14.2 2011-11-02 Plack::App::CGIBin(3pm)