PHWinfo banniere

Titres
PORTAIL ANNUAIRE ARTICLES COMPARATEUR HÉBERGEURS DEVIS FORUMS RÉDUCTEUR D'URL
Précédent   PHWinfo > Forums Hébergement > Forum Serveur - Sécurité et techniques > comp.unix.shell > creating arrays from text files
S'inscrire FAQ Membres Recherche Messages du jour Marquer les forums comme lus
comp.unix.shell Using and programming the Unix shell.

creating arrays from text files

Réponse
 
LinkBack Outils de la discussion
Vieux 26/12/2007, 14h55   #1
Shell Solution
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut creating arrays from text files

Hi,
I have a file that looks like this:

<MOID>
1
2
2
</MOID>
<MOID>
3
4
5
</MOID>
<MOID>
4
5
6
</MOID>


----------------------------------------------------------------------------------------

And I want to convert it to this:

moid1,1
moid1,2
moid1,2

moid2,3
moid2,4
moid2,5

moid3,4
moid3,5
moid3,6


Please advise.
  Réponse avec citation
Vieux 26/12/2007, 15h11   #2
Janis Papanagnou
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: creating arrays from text files

Shell Solution wrote:
> Hi,
> I have a file that looks like this:
>
> <MOID>
> 1
> 2
> 2
> </MOID>
> <MOID>
> 3
> 4
> 5
> </MOID>
> <MOID>
> 4
> 5
> 6
> </MOID>
>
>
> ----------------------------------------------------------------------------------------
>
> And I want to convert it to this:
>
> moid1,1
> moid1,2
> moid1,2
>
> moid2,3
> moid2,4
> moid2,5
>
> moid3,4
> moid3,5
> moid3,6
>
>
> Please advise.



awk '/^<M/{m++}/[0-9]/{print "moid"m ","$1}/^<\//{print ""}' your_file


Janis
  Réponse avec citation
Vieux 27/12/2007, 03h01   #3
mik3l3374@gmail.com
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: creating arrays from text files

On Dec 26, 10:55 pm, Shell Solution <esoimeme.geo...@gmail.com> wrote:
> Hi,
> I have a file that looks like this:
>
> <MOID>
> 1
> 2
> 2
> </MOID>
> <MOID>
> 3
> 4
> 5
> </MOID>
> <MOID>
> 4
> 5
> 6
> </MOID>
>
> ----------------------------------------------------------------------------------------
>
> And I want to convert it to this:
>
> moid1,1
> moid1,2
> moid1,2
>
> moid2,3
> moid2,4
> moid2,5
>
> moid3,4
> moid3,5
> moid3,6
>
> Please advise.


if you have GNU awk

awk 'BEGIN{RS="</MOID>\n<MOID>|<MOID>|</MOID>"}
{
for ( i=1 ; i<=NF;i++) print "moid"m,$i
m++
}' file
  Réponse avec citation
Vieux 14/01/2008, 08h24   #4
Shell Solution
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: creating arrays from text files

Dear All,
I appreciate your responses, it has been ful.
So here is the real deal.

Please find blow the content of 1 of the 24 files i receive daily,and
I meant to perform text extraction on.

-------------------------------------------------------------------------------------
Actual Input
-------------------------------------------------------------------------------------
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="MeasDataCollection.xsl" ?>
<!DOCTYPE mdc SYSTEM "MeasDataCollection.dtd">
<mdc xmlns:HTML="http://www.w3.org/TR/REC-xml">
<mfh>
<ffv>1</ffv>
<sn></sn>
<st>INAT</st>
<vn>MITMEDIA</vn>
<cbt>20080114102500.2+0300</cbt>
</mfh>
<md>
<neid>
<neun></neun>
<nedn></nedn>
</neid>
<mi>
<mts>20080114103000.1+0300</mts>
<gp>300</gp>
<mt>TCAP_TPS</mt>
<mt>TCAP_COMPONENT_SENT</mt>
<mt>TCAP_COMPONENT_RECEIVED</mt>
<mt>MTP2_MSU_SENT</mt>
<mt>MTP2_MSU_RECEIVED</mt>
<mt>MTP2_LINK_LOAD</mt>
<mt>MTP2_LINK_LOAD_SENT</mt>
<mt>MTP2_LINK_LOAD_RECEIVED</mt>
<mt>SAAL_SDUS_SENT</mt>
<mt>SAAL_OCTETS_SENT</mt>
<mt>SAAL_OCTETS_RECEIVED</mt>
<mt>SAAL_LINK_LOAD_RECEIVED</mt>
<mt>SAAL_LINK_LOAD_SENT</mt>
<mv>
<moid>SigMeas=InstanceId=2,HSN=0,SDL=2, Source = SS7</moid>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r>36.71</r>
<r>38.28</r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<sf>FALSE</sf></mv><mv>
<moid>SigMeas=InstanceId=1,HSN=0,SDL=2, Source = SS7</moid>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r>36.84</r>
<r>38.41</r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<sf>FALSE</sf></mv><mv>
<moid>SigMeas=InstanceId=4,HSN=0,SDL=1, Source = SS7</moid>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r>0.00</r>
<r>0.00</r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<sf>FALSE</sf></mv><mv>
<moid>SigMeas=InstanceId=3,HSN=0,SDL=1, Source = SS7</moid>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r>0.00</r>
<r>0.00</r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<sf>FALSE</sf></mv><mv>
<moid>SigMeas=InstanceId=2,HSN=0,SDL=1, Source = SS7</moid>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r>36.93</r>
<r>38.16</r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<sf>FALSE</sf></mv><mv>
<moid>SigMeas=InstanceId=1,HSN=0,SDL=1, Source = SS7</moid>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r>36.88</r>
<r>38.01</r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<sf>FALSE</sf></mv><mv>
<moid>SigMeas=DEFAULT, Source = SS7</moid>
<r>118.19</r>
<r>32982</r>
<r>22633</r>
<r>20367</r>
<r>26581</r>
<r>175.49</r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<sf>FALSE</sf></mv><mv>
<moid>SigMeas=DEFAULT, Source = _SYSTEM</moid>
<r>118.19</r>
<r>32982</r>
<r>22633</r>
<r>20367</r>
<r>26581</r>
<r>175.49</r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<r></r>
<sf>FALSE</sf></mv></mi>
</md>
<mff>
<ts>20080114103000.1+0300</ts>
</mff>
</mdc>

-------------------------------------------------------------------------------------
Desired Output
-------------------------------------------------------------------------------------
InstanceId=2






36.71
38.28

InstanceId=1






36.84
38.41

InstanceId=4






0
0

InstanceId=3






0
0


InstanceId=2






36.93
38.16

InstanceId=1






36.88
38.01


DEFAULT
118.19
32982
22633
20367
26581
175.49


DEFAULT
118.19
32982
22633
20367
26581
175.49


















On Dec 26 2007, 5:55 pm, Shell Solution <esoimeme.geo...@gmail.com>
wrote:
> Hi,
> I have a file that looks like this:
>
> <MOID>
> 1
> 2
> 2
> </MOID>
> <MOID>
> 3
> 4
> 5
> </MOID>
> <MOID>
> 4
> 5
> 6
> </MOID>
>
> ----------------------------------------------------------------------------------------
>
> And I want to convert it to this:
>
> moid1,1
> moid1,2
> moid1,2
>
> moid2,3
> moid2,4
> moid2,5
>
> moid3,4
> moid3,5
> moid3,6
>
> Please advise.












  Réponse avec citation
Vieux 14/01/2008, 20h55   #5
Cyrus Kriticos
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: creating arrays from text files

Shell Solution wrote:
>
> I appreciate your responses, it has been ful.
> So here is the real deal.
>
> Please find blow the content of 1 of the 24 files i receive daily,and
> I meant to perform text extraction on.


sed -ne 's#.*s=\([a-zA-Z0-9=]*\),.*#\1#p' -e 's#<r>\(.*\)</r>#\1#p' filename

--
Best regards | Be nice to America or they'll bring democracy to
Cyrus | your country.
  Réponse avec citation
Réponse


Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +1. Il est actuellement 02h23.


Édité par : vBulletin® version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0 RC5 Tous droits réservés.
Version française #16 par l'association vBulletin francophone
PHWinfo est un site Éducation Sans Frontières ©2000-2008
Ad Management by RedTyger
©Tous droits réservés par les parties respectives
Page generated in 0,16689 seconds with 13 queries