02-27-2012
perl extract content of file
I'm using Mail::Internet module, which will basically filter through email content and extract the body of the message
my perl script to extract the body of the email
HTML Code:
#!/usr/bin/perl -w
use Mail::Internet;
@lines = <STDIN>;
$mi_obj = new Mail::Internet([@lines]);
$mi_obj->print_body(\*STDOUT);
my email.txt file
HTML Code:
From rsmith@test.com Fri Feb 24 17:41:32 2012
Return-Path: <rsmith@test.com>
X-Original-To: datamgr@tordata1.test.com
Delivered-To: datamgr@tordata1.test.com
Received: from fssmtp1.test.com (fssmtp1.test.com [10.10.10.40])
by tordata1.test.com (Postfix) with ESMTP id 214A2E704D4
for <datamgr@tordata1.test.com>; Fri, 24 Feb 2012 17:41:32 -0500 (EST)
Received: from LT1805 (unknown [172.20.51.20])
by fssmtp1.test.com (Postfix) with ESMTP
id CC1BE1C4356; Fri, 24 Feb 2012 17:41:31 -0500 (EST)
MIME-Version: 1.0
From: rsmith@test.com
To: datamgr@tordata1.test.com
Cc: knorwood@test.com
Date: 24 Feb 2012 17:41:31 -0500
Subject: New Number Test
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Message-Id: <20120224224131.CC1BE1C4356@fssmtp1.test.com>
2012124541=0D=0A2012124542=0D=0A2012124543=0D=0A2012124544=0D=0A2=
013810008=0D=0A2013810009=0D=0A2013810011=0D=0A2013810012=0D=0A20=
13810013=0D=0A2013810014=0D=0A2013810015=0D=0A2014732160=0D=0A201=
4732161=0D=0A2015306904=0D=0A2015306905=0D=0A2016083923=0D=0A2016=
083924
when running the script on the command line
HTML Code:
perl perl_script.pl < email.txt
I get the following output
HTML Code:
2012124541=0D=0A2012124542=0D=0A2012124543=0D=0A2012124544=0D=0A2=
013810008=0D=0A2013810009=0D=0A2013810011=0D=0A2013810012=0D=0A20=
13810013=0D=0A2013810014=0D=0A2013810015=0D=0A2014732160=0D=0A201=
4732161=0D=0A2015306904=0D=0A2015306905=0D=0A2016083923=0D=0A2016=
083924
which is perfectly file, however I only want to see the numbers before the first = sign on each line.
HTML Code:
2012124541
013810008
13810013
4732161
how can I achieve that???
your help is highly appreciated
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
please help for the following task...
I have to extract the mac address & IP address from the file1:
...
0100004512EEF4 03 192.168.0.7 192.168.0.1 -1 ...
0100779hF5D212 03 192.168.0.8 192.168.0.1 -1 ...
0100789lF5D212 03 192.168.0.9 192.168.0.1 -1 ...
...
change the format (addidng... (15 Replies)
Discussion started by: fredao
15 Replies
2. Shell Programming and Scripting
Hi Everyone,
I have a file with the below content:
File1.txt
======
###
###==> the below table was created for testing1 purpose;
###
create table 123
(
field1 date,
field2 char(10)
primary key(field1)
);
###
###==> the below table was created... (5 Replies)
Discussion started by: nr_shan
5 Replies
3. Shell Programming and Scripting
My input file:
>sequence_1
ASSSSSSSSSSSDDDDDDDDDDDCCCCCCC
ASDSFDFFDFDFFWERERERERFSDFESFSFD
>sequence_2
ASDFDFDFFDDFFDFDSFDSFDFSDFSDFDSFASDSADSADASD
ASDFFDFDFASFASFASFAFSFFSDASFASFASFAFS
>sequence_3
VEDFGSDGSDGSDGSDGSDGSDGSDG
dDFSDFSDFSDFSDFSDFSDFSDFSDF
SDGFDGSFDGSGSDGSDGSDGSDGSDG
My... (22 Replies)
Discussion started by: patrick87
22 Replies
4. Shell Programming and Scripting
Please suggest a method (in c shell or any other shell) to implement following:
-To read file1.txt (sample file1 given below)
-To save name field in a variable <name>
-To save parameter field in a variable <parameter>
for ex. let a line in file1.txt be :
bill height weight
the extracted... (12 Replies)
Discussion started by: animesharma
12 Replies
5. Shell Programming and Scripting
310439 2012-01-11 03:44:42,291 INFO PutServlet:? - Content of the Message is:="1.0" encoding="UTF-8"?><ESP_SSIA_ACC_FEED>
310440 <BATCH_ID>12345678519</BATCH_ID>
310441 <UID>3498748823</UID>
310442 <FEED_TYPE>FULL</FEED_TYPE>
310443 <MART_NAME>SSIA_DM_TRANSACTIONS</MART_NAME>
310444... (11 Replies)
Discussion started by: arukuku
11 Replies
6. Shell Programming and Scripting
I have an input file with contents like:
./prbru6/12030613.LOG:24514|APPL|prbru6.8269.RTUDaemon.1|?|13:49:56|12/03/06|GMT+3|?|RTUServer Error:Count of Internal Error Qty (-1) < 0, for Audit group id - 1L5XVJ6DQE36AXL, after record number,1, File: EventAuditor.cc, Line: 394|? ... (5 Replies)
Discussion started by: rkrish
5 Replies
7. Shell Programming and Scripting
Hi Guru's,
I am new to shell scripting. I have a unique requirement:
The system generates a single pdf(/tmp/ABC.pdf) file with Invoices for Multiple Customers, the format is something like this:
Page1 >> Customer 1 >>Invoice1 + invoice 2 >> Page1 end
Page2 >> Customer 2 >>Invoice 3 + Invoice 4... (3 Replies)
Discussion started by: DIps
3 Replies
8. Shell Programming and Scripting
Hi All,
I have a file content like this.
#<clear_category_list>
#<include file="SUITE:Provision-FLEXPONDER_FAC.inc">
#<include file="CAT:SYSTEM:SAS_U23.inc">
#<include file="CAT:PRIORITY:10.inc">
#<include file="CAT:FAC_TYPE:OC48.inc">
#<include file="CAT:FAC_TYPE:OC192.inc">... (2 Replies)
Discussion started by: Syed Imran
2 Replies
9. Solaris
We have been provided a .dump file.The need is to extract the contents(may includes files and folder).
ls -lZ didnt help me as Z is not a valid option.
How to extract the file contents ? (7 Replies)
Discussion started by: vinil
7 Replies
10. Shell Programming and Scripting
I have a variable and assigned the following values
***XYZ_201519_20150929140642_20150929140644_211_0_0_211
I need to read this variable from backward and stop read when I get first underscore (_)
In this scenario I should get 211
Thanks
Kris (3 Replies)
Discussion started by: mkris
3 Replies
LEARN ABOUT CENTOS
mail::field::addrlist
Mail::Field::AddrList(3) User Contributed Perl Documentation Mail::Field::AddrList(3)
NAME
Mail::Field::AddrList - object representation of e-mail address lists
INHERITANCE
Mail::Field::AddrList
is a Mail::Field
SYNOPSIS
use Mail::Field::AddrList;
$to = Mail::Field->new('To');
$from = Mail::Field->new('From', 'poe@daimi.aau.dk (Peter Orbaek)');
$from->create('foo@bar.com' => 'Mr. Foo', poe => 'Peter');
$from->parse('foo@bar.com (Mr Foo), Peter Orbaek <poe>');
# make a RFC822 header string
print $from->stringify(),"
";
# extract e-mail addresses and names
@addresses = $from->addresses(); # strings
@names = $from->names(); # strings
@addr = $from->addr_list(); # Mail::Address objects (v2.00)
# adjoin a new address to the list
$from->set_address('foo@bar.com', 'Mr. Foo');
DESCRIPTION
Defines parsing and formatting of address field, for the following fields: "To", "From", "Cc", "Reply-To", and "Sender".
All the normally used features of the address field specification of RFC2822 are implemented, but some complex (and therefore hardly ever
used) constructs will not be inderstood. Use Mail::Message::Field::Full in MailBox if you need full RFC compliance.
METHODS
Constructors
Mail::Field::AddrList->combine(FIELDS)
See "Constructors" in Mail::Field
Mail::Field::AddrList->extract(TAG, HEAD [, INDEX ])
See "Constructors" in Mail::Field
Mail::Field::AddrList->new(TAG [, STRING | OPTIONS])
See "Constructors" in Mail::Field
"Fake" constructors
$obj->create(OPTIONS)
See ""Fake" constructors" in Mail::Field
$obj->parse()
See ""Fake" constructors" in Mail::Field
Accessors
$obj->set(OPTIONS)
See "Accessors" in Mail::Field
$obj->stringify()
See "Accessors" in Mail::Field
$obj->tag()
Mail::Field::AddrList->tag()
See "Accessors" in Mail::Field
Smart accessors
$obj->addr_list()
Returns the collected Mail::Address objects.
$obj->addresses()
Returns a list if email addresses, found in the field content.
$obj->names()
Returns a list of nicely formatted named, for each of the addresses found in the content.
$obj->set_address(EMAIL, NAME)
Add/replace an EMAIL address to the field.
$obj->text([STRING])
See "Smart accessors" in Mail::Field
DIAGNOSTICS
Error: Undefined subroutine <method> called
Mail::Field objects use autoloading to compile new functionality. Apparently, the mehod called is not implemented for the specific
class of the field object.
SEE ALSO
This module is part of the MailTools distribution, http://perl.overmeer.net/mailtools/.
AUTHORS
The MailTools bundle was developed by Graham Barr. Later, Mark Overmeer took over maintenance without commitment to further development.
Mail::Cap by Gisle Aas <aas@oslonett.no>. Mail::Field::AddrList by Peter Orbaek <poe@cit.dk>. Mail::Mailer and Mail::Send by Tim Bunce
<Tim.Bunce@ig.co.uk>. For other contributors see ChangeLog.
LICENSE
Copyrights 1995-2000 Graham Barr <gbarr@pobox.com> and 2001-2007 Mark Overmeer <perl@overmeer.net>.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See
http://www.perl.com/perl/misc/Artistic.html
perl v5.16.3 2012-12-21 Mail::Field::AddrList(3)