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
Sådan finder du filer, der har mere end én forekomst af mønster Prahlad Shell Programmering og Scripting 10 08-08-2008 01:16 PM
Tælling af matchede mønster tildragelsen palash2k UNIX for dummyer Spørgsmål & svar 3 04-24-2008 04:33 PM
Mønster ikke fundet: AWK, hjælpe jkl_jkl Shell Programmering og Scripting 7 03-12-2008 07:46 AM
få stanza navne, hvis det konstaterede mønster vijaya2006 Shell Programmering og Scripting 4 09-25-2007 10:03 AM
finde duplikateksemplaret filer efter størrelse og finde mønstertilpasning og tælle jerome Sukumar Shell Programmering og Scripting 2 12-01-2006 04:20 AM

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 07-23-2008
rakeshou rakeshou is offline
Registreret Bruger
  
 

Join Date: May 2007
Stillinger: 75
Thumbs up Find Seneste forekomst af et andet mønster, når et mønster er fundet.

Hej,

Jeg har to filer nemlig,

rak1:
$ Cat rak1
Citat:
# Dette er test

[Section1]
PMAN 2
ZMAN 4

[section2]
xxx 0
NOP 6

[§ 3]
PMAN 1
ZMAN 8
rak2:

$ Cat rak2
Citat:
# Dette er test

[Section1]
PMAN 2
ZMAN 9

[section2]

xxx 0
NOTA 5
TOCN 8






[§ 3]
PMAN 1

Code:
sdiff rak1 rak2

afkast:

Citat:
$ Sdiff rak1 rak2
# dette er test # dette er test

[Section1] [Section1]
PMAN 2 PMAN 2
ZMAN 4 | ZMAN 9

[section2] [section2]
>
xxx 0 xxx 0
NOP 6 | NOTA 5
> TOCN 8

>
>
>
>
>
[§ 3] [§ 3]
PMAN 1 PMAN 1
ZMAN 8 <
Jeg ønsker, at de linjer, der fik ændret, ændres eller slettes forud med det afsnit, de er i.

Jeg har gjort det indtil nu:

Citat:
$ Sdiff rak1 rak2 | sed 's / / / g' | grep-n "." | Egrep-e "\ ||<|>" | sed'/>$/ d '
5: ZMAN 4 | ZMAN 9
10: NOP 6 | NOTA 5
11:> TOCN 8
20: ZMAN 8 <
men jeg dont kende hvor hen til opstille afsnit foran ændret, tilføjet eller slettet linjer.

Ligeledes ville det være værdsat, hvis produktionen kunne udskrives som

[afsnit X] <valInFile1/valInFile2> <valInFile1/valInFile2>
og så videre.



Please help me out
  #2 (permalink)  
Old 07-23-2008
alex_5161 alex_5161 is offline
Registreret Bruger
  
 

Join Date: Jan 2007
Beliggenhed: Detroit
Stillinger: 124
Jeg kan ikke se, hvorfor du har brug for egrep. Anvendelse sed for at filtrering - let.
Nu bruger-n option du forhindre sed fra trykning unnessesary linje.
Efter at bare udskrive, hvad du har brug for: linjer med afsnit nummer og linjer med ændringer:

Code:
> sdiff rak1 rak2 | grep -n "." | sed -n '/>$/d; /section/p; /[|<>]/p'

Ok, slette stadig behov

Det eneste ikke-Nice, vil dele med nogen ændringer i, at udskrift

Jeg kunne ikke få det af "sed«
Let med nawk:
Code:
>....|
nawk '{if ( ($0 !~ /section/) || (prev !~ /section/) ) print prev; prev=$0;}
        END{if ($0 !~ /section/) print $0;}'

Ikke klart, hvorfor det er tom linje i begyndelsen og slutningen, så skal du fjerne det ved at:

Code:
>...|nawk NF;

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:01 AM.


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