The UNIX and Linux Forums  
Hallo und herzlich Willkommen aus den Vereinigten Staaten, die UNIX-und Linux-Foren! Vielen Dank für Ihren Besuch und die Teilnahme an unserem Global Community.

Go Back   Die UNIX-und Linux-Foren > Top Foren > Shell Programmierung und Scripting
.
Google unix.com



Shell Programmierung und Scripting Post Fragen zu ksh, csh, sh, bash, Perl, PHP, sed, awk und anderen Shell-Skripte und Shell-Scripting-Sprachen hier.

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
Grab einer kleineren und größeren Wert Raynon Shell Programmierung und Scripting 3 10-11-2007 06:23 AM
Besorgen Sie sich die Zeile mit awk cdfd123 Shell Programmierung und Scripting 1 10-10-2007 08:21 AM
Such-und Grab-Daten aus einer großen Datei ting123 UNIX for Dummies Questions & Answers 1 06-06-2006 09:41 PM
Wie Zusammenfügen zweier Zeichenketten oder mehrere Zeichenketten zu einer Zeichenkette in der B-Shell? fontana Shell Programmierung und Scripting 2 08-26-2005 11:58 AM
Wie Besorgen Sie sich die letzte Datei n9ninchd UNIX for Dummies Questions & Answers 1 05-10-2001 04:31 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 Suche diesen Thread Rate Thread Anzeige-Modi
  #1 (permalink)  
Old 10-04-2006
Raynon Raynon is offline
Registrierte Nutzer
  
 

Join Date: Sep 2006
Ort: SG
Beiträge: 350
Wie packen Daten zwischen 2 Strings?

Hi All,
Ich habe eine Text-Datei. Wie kann ich packen alle Daten zwischen "05T00NPQSMR1" und "****" mit awk? Bitte beachten Sie, dass die Textzeilen kann nicht festgelegt werden Text und Inhalt ist dynamisch. Pls help. Danke

Unten ist mein Code, wo $ LOT_SUFFIX ist mein Shell-Variable.

awk'/'"$ LOT_SUFFIX "'/,/ blah / '$ nfile_selected

Daten:

blah
xxx
yyy
************************************************** ********
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
** Sample \u003d 100 0
** \u003d TASM MFMM xx xx xx
** \u003d Tasc MFMC xx xx xx
************************************
xxxx
yyy
zzz
blah
blah
************************************************** ********
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
** Sample \u003d 100 0
** \u003d TASM MFMM xx xx xx
** \u003d Tasc MFMC xx xx xx
************************************


Erwartete Leistung:
************************************************** ********
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
** Sample \u003d 100 0
** \u003d TASM MFMM xx xx xx
** \u003d Tasc MFMC xx xx xx
************************************
xxxx
yyy
zzz
blah
blah
************************************
  #2 (permalink)  
Old 10-04-2006
vino's Avatar
vino vino is offline Forum Staff  
Supporter (in vino veritas)
  
 

Join Date: Feb 2005
Ort: Bangalore, Indien
Posts: 2798
Try this.
Code:
sed -n -e '/05T00NPQSMR1/,/^\**/p' input.txt
Else ist.
Code:
sed -n -e '/05T00NPQSMR1/,/^[*]*/p' input.txt
Im Moment habe ich nicht über den Zugang zu einem Unix-Terminal zu testen.
  #3 (permalink)  
Old 10-04-2006
Raynon Raynon is offline
Registrierte Nutzer
  
 

Join Date: Sep 2006
Ort: SG
Beiträge: 350
Zitat:
Zitat von vino
Try this.
Code:
sed -n -e '/05T00NPQSMR1/,/^\**/p' input.txt

Else ist.
Code:
sed -n -e '/05T00NPQSMR1/,/^[*]*/p' input.txt
Im Moment habe ich nicht über den Zugang zu einem Unix-Terminal zu testen.
Hi, die Ausgabe scheint weit von dem, was ich wollte. Siehe unten.

Leistung:
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
  #4 (permalink)  
Old 10-04-2006
ghostdog74 ghostdog74 is offline Forum Advisor  
Registrierte Nutzer
  
 

Join Date: Sep 2006
Beiträge: 2.533
Alternative in Python:

Eingang:
blah
xxx
yyy
************************************************** ********
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
** Sample \u003d 100 0
** \u003d TASM MFMM xx xx xx
** \u003d Tasc MFMC xx xx xx
************************************
xxxx
yyy
zzz
blah
blah
************************************************** ********
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
** Sample \u003d 100 0
** \u003d TASM MFMM xx xx xx
** \u003d Tasc MFMC xx xx xx
************************************
xxxasdfljsdlfx
yyy; slkfd, s
zzzsdklfjsd
blasdflksdjh
blajaspofkspodf



Code:
number = []
all = open("test.txt").readlines()
for num,line in enumerate(all):
 	line = line.strip()
 	if "*" * 58 in line:
 		number.append(num)
 

for i in range(len(number)):
 	try:
 		print ''.join(all[ number[i]:number[i+1] ] )
 	except:
 		print ''.join(all[number[i]:])

Leistung:
************************************************** ********
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
** Sample \u003d 100 0
** \u003d TASM MFMM xx xx xx
** \u003d Tasc MFMC xx xx xx
************************************
xxxx
yyy
zzz
blah
blah

************************************************** ********
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
** Sample \u003d 100 0
** \u003d TASM MFMM xx xx xx
** \u003d Tasc MFMC xx xx xx
************************************
xxxasdfljsdlfx
yyy; slkfd, s
zzzsdklfjsd
blasdflksdjh
blajaspofkspodf

Zuletzt bearbeitet von ghostdog74; am 10-05-2006 03:34 AM..
  #5 (permalink)  
Old 10-04-2006
vish_indian vish_indian is offline
Registrierte Nutzer
  
 

Join Date: Jun 2006
Ort: Delhi, Indien
Beiträge: 92
Code:
awk -v pat1="05T00NPQSMR1" -v pat2="^[*]{3,}" '$0~pat1,$0~pat2' awtest
Wenn Sie Daten nur bis zum "** Tasc"

Code:
awk -v pat1="05T00NPQSMR1" -v pat2="^** tasC" '$0~pat1,$0~pat2' awtest
  #6 (permalink)  
Old 10-04-2006
anbu23 anbu23 is offline Forum Advisor  
Registrierte Nutzer
  
 

Join Date: März 2006
Ort: Bangalore, Indien
Posts: 1398
Zitat:
blah
************************************************** ********
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
Code:
sed -n '/05T00NPQSMR1/,/*\{58\}/p' input
wo 58 ist Länge von mehr als Sternchen Linie
  #7 (permalink)  
Old 10-05-2006
Raynon Raynon is offline
Registrierte Nutzer
  
 

Join Date: Sep 2006
Ort: SG
Beiträge: 350
Hi Anbu,
Unten-Code:
awk-v pat1 \u003d "05T00NPQSMR1"-v pat2 \u003d"^[*]{ 3,) " '$ 0 ~ pat1, $ 0 ~ pat2" awtest

& Vish,
Unten-Code:
sed -n '/ 05T00NPQSMR1 /, / * \ (58 \) / p'-Eingang

Beide Ausgänge sind:
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
** Sample \u003d 100 0
** \u003d TASM MFMM xx xx xx
** \u003d Tasc MFMC xx xx xx
************************************
xxxx
yyy
zzz
blah
blah
************************************************** ********
** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
** Sample \u003d 100 0
** \u003d TASM MFMM xx xx xx
** \u003d Tasc MFMC xx xx xx
************************************


Aber was ich brauche ist:

** 05T00NPQSMR1 P98P2234 Dienstag 10 03 09:57:24 2006
** Dibid \u003d 1166 testerid \u003d 6
** Sample \u003d 100 0
** \u003d TASM MFMM xx xx xx
** \u003d Tasc MFMC xx xx xx
************************************
xxxx
yyy
zzz
blah
blah


Pls help. Danke

Zuletzt bearbeitet von Raynon; am 10-05-2006 03:21 AM..
Closed Thread

Lesezeichen

Tags
regex, reguläre Ausdrücke

Thread Tools Suche diesen Thread
Suche diesen Thread:

Erweiterte Suche
Anzeige-Modi Rate this thread
Rate this thread:

Forumregeln
Du möglicherweise nicht neue Themen
Du möglicherweise nicht nach Antworten
Du möglicherweise nicht post-Anlagen
Du möglicherweise nicht bearbeiten Sie Ihre Beiträge

BB-Code ist Auf
Smilies sind Auf
[IMG] Code Auf
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Auf




Alle Zeiten sind GMT -4. Es ist jetzt 10:35 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Ltd. Sprachliche Übersetzungen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Die UNIX-und Linux-Foren Content © Copyright 1993-2009. Alle Rechte Reserved.Ad Management von RedTyger

Content Relevant URLs durch vBSEO 3.2.0