The UNIX and Linux Forums  

Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
samenvoeging van twee bestanden vakharia Mahesh Programmeren en Shell Scripting 7 09-15-2008 01:32 PM
Fuserende arrays jakSun8 Programmeren en Shell Scripting 4 07-02-2008 12:13 AM
Samenvoegen van twee bestanden venommaker UNIX voor Dummies Questions & Answers 4 01-10-2008 08:15
Fuserende info Manan Programmeren en Shell Scripting 3 05-20-2006 08:51
Fuserende Help kumarc Programmeren en Shell Scripting 3 05-04-2006 03:24 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 01-05-2009
ssachins ssachins is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2009
Posts: 29
Samenvoeging van de rijen

Hi guys,

Wish you all a very Happy New Year!.

Thanks in advance.

Ik wil het lezen van een bestand en voeg in de rijen die '\ n' in.
De rijen kunnen worden> 50000 bytes. Het script moet samenvoegen alle rijen tot aan de volgende rij begint met het woord 'Type |'.
ex.
Type | Ticket | TradeID | 42224A | SystemID | DDDD61266 | SourceSystem | RMS | Version | 5 | LatestVersionYN | Y | Counterpa rty | OB | DBLegalEntity | Londen | Nota | cal evenementen toegevoegd | verkoopmedewerker | DHX | LastUpdated | dec 2008 18:31 : 40 | Actie | Exp | DealCaptureSystem | Verkoop | CustomerSourceSystem | RMS | Klantenservice | AUGS | ActionEffectiveDa te | DEC 2008 00:00:00 | BookingLocation | Londen | EnteredBy | GONU | MarkupAmt | 100 | MarkupCcy | KEX | PremiumCurrency | EUR | Premi umAmount | 000 | PremiumDate | dec 2008 | PremiumHasPaidYN | N | BookingDetails | 9000/mihl
Cliënt verkoopt KEZUSD
st ref 1,3724
Leveraged Sele op ST
Sele 52, te beginnen


Type | FxDiscreteDNT | TradeID | SSA32553H | SystemID | GGT04481 | SourceSystem | RMS | SourceSystemBook | OT | Boek | OT | BookBranchParent | Go | Version | 8 | LatestVersionYN | Y | tegenpartij | DOB | Status | KnockedOut | IsLiveYN | N | DBLega lEntity | Londen | LastUpdated | Jan 2009 00:26:35 | Actie | KnockedOut | CounterpartySourcesystem | RMS | TradeDate | JUL 2006 | ProductID | KKI99106 | StructureID | DDS32553 | DealCaptureSystem | RMS | CustomerSourceSystem | RMS | Klantenservice | ESL | PricingSite | Optie | UnderCurrency1 | JPY | AccCurrency1 | US | UpBarrier1 | 1,5 | LowBarrier1 | 1 | UnderCurrenc y2 | JPY | AccCurrency2 | CH | UpBarrier2 | 1,64 | LowBarrier2 | 1,49 | UnderCurrency3 | EUR | AccCurrency3 | JPY | UpBarrie r3 | 175 | LowBarrier3 | 105 | LastFixed

De outout moet worden
Het onderstaande dossier moet in een lijn.

Type | Ticket | TradeID | 42224A | SystemID | DDDD61266 | SourceSystem | RMS | Version | 5 | LatestVersionYN | Y | Counterpa rty | OB | DBLegalEntity | Londen | Nota | cal evenementen toegevoegd | verkoopmedewerker | DHX | LastUpdated | dec 2008 18:31 : 40 | Actie | Exp | DealCaptureSystem | Verkoop | CustomerSourceSystem | RMS | Klantenservice | AUGS | ActionEffectiveDa te | DEC 2008 00:00:00 | BookingLocation | Londen | EnteredBy | GONU | MarkupAmt | 100 | MarkupCcy | KEX | PremiumCurrency | EUR | Premi umAmount | 000 | PremiumDate | dec 2008 | PremiumHasPaidYN | N | BookingDetails | 9000/mihl cliënt verkoopt KEZUSD st ref 1,3724 Leveraged Sele ten ST Sele 52, te beginnen

Type | FxDiscreteDNT | TradeID | SSA32553H | SystemID | GGT04481 | SourceSystem | RMS | Version | 8 | LatestVersionYN | Y | tegenpartij | DOB | DBLegalEntity | Londen | LastUpdated | Jan 2009 00:26:35 | Actie | KnockedOut | DealCaptureSystem | RMS | CustomerSourceSystem | RMS | Klantenservice | ESL | PricingSite | O PTIE | UnderCurrency1 | JPY | AccCurrency1 | US | UnderCurrency3 | EUR | AccCurrency3 | JPY | UpBarrier3 | 175 | LowBarri er3 | 105 | LastFixed

Ik probeerde met behulp van onderstaande script, maar kan niet overweg met AWK> 20000 bytes. Ook het gebruik van Tekenreekswaarde als' LINE_BREAK "voor de identificatie rijen heb samengevoegd.

FileName \u003d LINE_TEST.TXT
FileName1 \u003d O_LINE_TEST.TXT
Uitvoer_bestand \u003d OUTPUT_WITHOUT_LINE_BREAK.tmp
if [[-e $ filename]], vandaar
sed "s /% / percentage / g" $ filename> $ FileName1
# # Als u '%' als' awk 'niet kunnen omgaan.

/ usr/xpg4/bin/awk 'NM \u003d\u003d 1 (printf $ 0;) volgende
! / ^ TradeType / (printf "LINE_BREAK" $ 0;) volgende
(printf "\ n" $ 0)
END (print "")
'$ FileName1> $ uitvoerbestand
fi
  #2 (permalink)  
Old 01-05-2009
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
addict
  
 

Join Date: Jan 2007
Locatie: Варна, България / Milano, Italia
Berichten: 2.926
Probeer met nawk:


Code:
nawk '$1=$1' FS='\n' RS= ORS='\n\n' infile

  #3 (permalink)  
Old 01-05-2009
ssachins ssachins is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2009
Posts: 29
Fuserende rijen - fout

Ik krijg de onderstaande foutmelding:

13460 Segmentation fault (core). Is het in verband Geheugen?

De daadwerkelijke grootte van het bestand is: 95532469 bytes.
  #4 (permalink)  
Old 01-05-2009
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
addict
  
 

Join Date: Jan 2007
Locatie: Варна, България / Milano, Italia
Berichten: 2.926
Probeer met Perl:


Code:
perl -00ple'tr.\n. .' infile

  #5 (permalink)  
Old 01-05-2009
ssachins ssachins is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2009
Posts: 29
Identificeer

Hoe identfy die lijnen werden samengevoegd, terwijl de verwerking van het bestand?
  #6 (permalink)  
Old 01-05-2009
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
addict
  
 

Join Date: Jan 2007
Locatie: Варна, България / Milano, Italia
Berichten: 2.926
Citaat:
Oorspronkelijk geplaatst door ssachins View Post
Hoe identfy die lijnen werden samengevoegd, terwijl de verwerking van het bestand?
Just append enkele string te identificeren:


Code:
perl -00ple'tr.\n. . and $_.=" __FIXED__"' infile

  #7 (permalink)  
Old 01-06-2009
frostmourn frostmourn is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2009
Posten: 8

Code:
sed '/^Type/{:a;N;/\nType/!{s/\n/ /;ba};s/\n/&&/}'

Closed Thread

Bladwijzers

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 02:49.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0