The UNIX and Linux Forums  


Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her.

Mere UNIX og Linux Forum Emner du måske kan finde Helpful
Tråd Thread Starter Forum Svar Last Post
fusionerende to filer vakharia Mahesh Shell Programmering og Scripting 7 09-15-2008 01:32 PM
Fusionerende arrays jakSun8 Shell Programmering og Scripting 4 07-02-2008 12:13 AM
Sammenflet to filer venommaker UNIX for dummyer Spørgsmål & svar 4 01-10-2008 08:15 AM
Fusionerende info Manan Shell Programmering og Scripting 3 05-20-2006 08:51 AM
Fusionerende Hjælp kumarc Shell Programmering og 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 Søg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 01-05-2009
ssachins ssachins is offline
Registreret Bruger
  
 

Join Date: Jan 2009
Stillinger: 29
Sammenlægning af rækker

Hi guys,

Ønsker jer alle en meget Godt nytår!.

Thanks in advance.

Jeg ønsker at læse en fil og fusionere de rækker, som har '\ n' i det.
Rækkerne kunne> 50000 bytes. Scriptet bør fusionere alle rækker indtil det næste træk starter med ordet 'Type | «.
ex.
Type | Billet | TradeID | 42224A | SystemID | DDDD61266 | SourceSystem | RMS | Version | 5 | LatestVersionYN | Y | Counterpa rty | OB | DBLegalEntity | London | Noter | CAL begivenheder tilføjet | sælger | DHX | LastUpdated | DEC 2008 18:31 : 40 | Foranstaltning | Exp | DealCaptureSystem | Salg | CustomerSourceSystem | RMS | Kunde | AUGS | ActionEffectiveDa te | Dec 2008 00:00:00 | BookingLocation | London | EnteredBy | GONU | MarkupAmt | 100 | MarkupCcy | KEX | PremiumCurrency | EUR | Premi umAmount | 000 | PremiumDate | dec 2008 | PremiumHasPaidYN | N | BookingDetails | 9000/mihl
Klient sælger KEZUSD
st ref 1,3724
Gearede Sele er ST
52 Sele, begyndende


Type | FxDiscreteDNT | TradeID | SSA32553H | SystemID | GGT04481 | SourceSystem | RMS | SourceSystemBook | OT | Bestil | OT | BookBranchParent | Gå | Version | 8 | LatestVersionYN | Y | Modpart | DOB | Status | KnockedOut | IsLiveYN | N | DBLega lEntity | London | LastUpdated | Jan 2009 00:26:35 | Foranstaltning | KnockedOut | CounterpartySourcesystem | RMS | TradeDate | Juli 2006 | ProductID | KKI99106 | StructureID | DDS32553 | DealCaptureSystem | RMS | CustomerSourceSystem | RMS | Kunde | skolefrafald | PricingSite | Mulighed | 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

Den outout bør
Nedenstående referat bør være i en linje.

Type | Billet | TradeID | 42224A | SystemID | DDDD61266 | SourceSystem | RMS | Version | 5 | LatestVersionYN | Y | Counterpa rty | OB | DBLegalEntity | London | Noter | CAL begivenheder tilføjet | sælger | DHX | LastUpdated | DEC 2008 18:31 : 40 | Foranstaltning | Exp | DealCaptureSystem | Salg | CustomerSourceSystem | RMS | Kunde | AUGS | ActionEffectiveDa te | Dec 2008 00:00:00 | BookingLocation | London | EnteredBy | GONU | MarkupAmt | 100 | MarkupCcy | KEX | PremiumCurrency | EUR | Premi umAmount | 000 | PremiumDate | dec 2008 | PremiumHasPaidYN | N | BookingDetails | 9000/mihl Kundeanmeldelser sælger KEZUSD st ref 1,3724 gearede Sele er på ST 52 Sele, begyndende

Type | FxDiscreteDNT | TradeID | SSA32553H | SystemID | GGT04481 | SourceSystem | RMS | Version | 8 | LatestVersionYN | Y | Modpart | DOB | DBLegalEntity | London | LastUpdated | Jan 2009 00:26:35 | Foranstaltning | KnockedOut | DealCaptureSystem | RMS | CustomerSourceSystem | RMS | Kunde | skolefrafald | PricingSite | O ption | UnderCurrency1 | JPY | AccCurrency1 | US | UnderCurrency3 | EUR | AccCurrency3 | JPY | UpBarrier3 | 175 | LowBarri ER3 | 105 | LastFixed

Jeg forsøgte at bruge nedenstående script men AWK ikke kan håndtere> 20000 bytes. Også ved hjælp String som »LINE_BREAK 'for identifikation rækker fik fusionerede.

FileName \u003d LINE_TEST.TXT
FileName1 \u003d O_LINE_TEST.TXT
OUTPUT_FILE \u003d OUTPUT_WITHOUT_LINE_BREAK.tmp
hvis [[-e $ FileName]]; derefter
sed "s /% / procent / g" $ FileName> $ FileName1
# # Hvis du vil fjerne '%' som 'awk' kan ikke klare det.

/ usr/xpg4/bin/awk 'NR \u003d\u003d 1 (printf $ 0; næste)
! / ^ TradeType / (printf "LINE_BREAK" $ 0; næste)
(printf "\ n" $ 0)
SLUT (print "")
'$ FileName1> $ OUTPUT_FILE
fi
  #2 (permalink)  
Old 01-05-2009
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
narkoman
  
 

Join Date: Jan 2007
Beliggenhed: Варна, България / Milano, Italia
Indlæg: 2.926
Prøv med nawk:


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

  #3 (permalink)  
Old 01-05-2009
ssachins ssachins is offline
Registreret Bruger
  
 

Join Date: Jan 2009
Stillinger: 29
Sammenlægning af rækker - fejl

Jeg får nedenstående fejl:

13.460 Segmentering Uagtsomhed (coredump). Er det tilknyttede Memory?

Den faktiske filstørrelse: 95532469 bytes.
  #4 (permalink)  
Old 01-05-2009
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
narkoman
  
 

Join Date: Jan 2007
Beliggenhed: Варна, България / Milano, Italia
Indlæg: 2.926
Prøv med Perl:


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

  #5 (permalink)  
Old 01-05-2009
ssachins ssachins is offline
Registreret Bruger
  
 

Join Date: Jan 2009
Stillinger: 29
Identificer

Sådan identfy som linjer blev fusioneret under behandling af den fil?
  #6 (permalink)  
Old 01-05-2009
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
narkoman
  
 

Join Date: Jan 2007
Beliggenhed: Варна, България / Milano, Italia
Indlæg: 2.926
Citat:
Oprindeligt Indsendt af ssachins View Post
Sådan identfy som linjer blev fusioneret under behandling af den fil?
Bare append nogle strengen at identificere dem:


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

  #7 (permalink)  
Old 01-06-2009
frostmourn frostmourn is offline
Registreret Bruger
  
 

Join Date: Jan 2009
Stillinger: 8

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

Closed Thread

Bogmærker

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 05:24 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0