2012-11-02 7 views
7

Mam plik Blackberry plik jad:Sed: uzyskać linie rozpoczynające się od "RIM-COd-"

RIM-COD-URL-12: HelloWorld-12.cod 
RIM-COD-Size: 68020 
RIM-MIDlet-Icon-2-1: ____HOVER_ICON_res/icon/blackberry/icon-68.png,focused 
RIM-COD-URL-11: HelloWorld-11.cod 
RIM-MIDlet-Icon-Count-2: 1 
RIM-COD-URL-10: HelloWorld-10.cod 
RIM-MIDlet-Icon-Count-1: 1 
MIDlet-Vendor: Vasia Pupkin 
RIM-MIDlet-Icon-1-1: res\icon\blackberry\____HOVER_ICON_icon-68.png,focused 
Manifest-Version: 1.0 
RIM-MIDlet-Flags-1: 0 
RIM-COD-SHA1-38: 9a c8 b3 35 72 de 34 5e 7a 0a 5b 9e c3 3a 65 4c 20 0f 8e 50 

po prostu chcesz dostać linie zaczynają się RIM-COD-.

Czy możesz podać mi rozwiązania dla awk lub sed?

+3

'grep -v^RIM-COD-' powinien to zrobić bez żadnych ceregieli. –

+3

Przepraszam, przeczytałem twoje pytanie do tyłu - jest tam podwójny negatyw, który mnie dostał. To, co ci dałem, usunie linie, które * nie * zaczynają się od 'RIM-COD-'. Aby zachować te linie, potrzebujesz 'grep^RIM-COD-'. –

+0

@CarlNorum Właśnie zrobiłem to samo co twoje, +2 do komentarzy. pierwszy grep -V podszedł, a następnie znalazł słowo podstęp ..... – Kent

Odpowiedz

14

Użyj sed -n i drukuj tylko wiersze pasujące do RIM-COD.

sed -n -e '/^RIM-COD-/p' yourfile.txt 
16

Spróbuj zrobić tak:

awk '/^RIM-COD/' file.txt 

Albo

grep "^RIM-COD" file.txt 

Albo

sed -n '/^RIM-COD/p' file.txt