The UNIX and Linux Forums  
Hallo en welkom van de Verenigde Staten aan de UNIX en Linux Forum! Bedankt voor uw bezoek en Deelnemen aan onze wereldwijde gemeenschap.

Go Back   De Unix-en Linux Forum > Top Forums > UNIX voor Dummies Questions & Answers
.
google unix.com



UNIX voor Dummies Questions & Answers Als u niet zeker weet waar je een Unix-of Linux vraag, post het hier. Alle UNIX-en Linux beginners van harte welkom!!

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
Ontleden door het bestand en afdrukken met behulp van awk of sed script cdfd123 Programmeren en Shell Scripting 4 03-03-2008 12:07
parse tekstbestand craggm Programmeren en Shell Scripting 9 02-27-2007 02:13
parse tekstbestand klick81 Programmeren en Shell Scripting 3 12-18-2006 12:04
Parse tekst bestand en stuurt mails Amruta Pitkar UNIX voor Dummies Questions & Answers 12 08-11-2006 03:56
How to parse een tekstbestand met \ 034 als gebied en \ 035 als einde van het bericht scheidingsteken? indianya Programmeren en Shell Scripting 1 08-26-2005 09:20 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 02-17-2008
sophiadun sophiadun is offline
Geregistreerde gebruiker
  
 

Join Date: Feb 2008
Posts: 10
parse door middel van een tekstbestand en output veel

Hallo, iedereen

De input file patroon is zoals hieronder:

Begin Object1

txt1

eindigen
;


Begin object2

txt2

eindigen
;

...


Ik wil ontleden dit een bestand in Object1.txt, Obeject2.txt ... iedere bevat een verklaring van 'om te beginnen' ';', bijvoorbeeld object1.txt bevat:
Begin Object1

txt1

eindigen
;

---------------------------
Any thoughts?
ook Vragen
1. elke AWK of SED kunt zoeken naar een patroon in vele lijnen?
2. hoe kan ik de uitgang van veel bestanden?
3. Zal ik zet deze draad aan "Programmeren in de Shell en Scripting"?

Ik dank u bij voorbaat
  #2 (permalink)  
Old 02-18-2008
Lakris Lakris is offline
Geregistreerde gebruiker
  
 

Join Datum: oktober 2007
Posts: 246
Als u bash Je zou kunnen proberen zoiets als dit, zeer eenvoudige en waarschijnlijk veel valkuilen. Maar aangezien U bent verwerking broncode er syntactische regels die kunnen worden verwacht te worden gevolgd. Het simpelweg controles voor het Begin woord en stappen de bestandsnaam index bij ondervonden.
Code:
lakris@ubuntu:~/projekt/scripts$ cat projekt.txt 
Begin Object1
txt1
end
;
Begin Object2
txt2
end
;
Begin Object3
txt3
end
;
Begin Object4
txt4
end
;
lakris@ubuntu:~/projekt/scripts$ cat splitit.sh 
#!/bin/bash
cnt=0
while read line;do
  [[ "$line" =~ "Begin" ]] && cnt=$(($cnt+1))
  echo $line goes into Object$cnt.txt
done < projekt.txt
lakris@ubuntu:~/projekt/scripts$ ./splitit.sh 
Begin Object1 goes into Object1.txt
txt1 goes into Object1.txt
end goes into Object1.txt
; goes into Object1.txt
Begin Object2 goes into Object2.txt
txt2 goes into Object2.txt
end goes into Object2.txt
; goes into Object2.txt
Begin Object3 goes into Object3.txt
txt3 goes into Object3.txt
end goes into Object3.txt
; goes into Object3.txt
Begin Object4 goes into Object4.txt
txt4 goes into Object4.txt
end goes into Object4.txt
; goes into Object4.txt
lakris@ubuntu:~/projekt/scripts$
Change "gaat in" aan ">>" wanneer u ervan overtuigd zijn dat de output is wat je wilt. Het zal toevoegen aan een bestand met die naam, zodat U kunt elk object *. txt eerst te verwijderen.

/ Lakris
  #3 (permalink)  
Old 02-18-2008
sophiadun sophiadun is offline
Geregistreerde gebruiker
  
 

Join Date: Feb 2008
Posts: 10
Thumbs up

Dank u zeer, Lakris. Ik zal proberen het uit
  #4 (permalink)  
Old 02-18-2008
sophiadun sophiadun is offline
Geregistreerde gebruiker
  
 

Join Date: Feb 2008
Posts: 10
Oh, wat als de input file zoals:
Begin aaaaa
txt1
eindigen
;
Begin bbbbbb
txt2
eindigen
;
Begin cccc
txt3
eindigen
;
Begin ddd
txt4
eindigen
;
  #5 (permalink)  
Old 02-18-2008
Lakris Lakris is offline
Geregistreerde gebruiker
  
 

Join Datum: oktober 2007
Posts: 246
Begin dan de eerste verklaring (aaaaa) belandt in Object1.txt het tweede (bbbbbb) in Object2.txt enz. Wilt u laten genaamd Object-aaaaa.txt, Object-bbbbbb.txt etc?
Neem een kijkje op de while read line te bouwen. U kunt splitsen het op om meer te lezen dan een variabele ... of U kunt behandelen lijn als een array.
  #6 (permalink)  
Old 02-18-2008
radoulov's Avatar
radoulov radoulov is online now Forum Staff  
addict
  
 

Join Date: Jan 2007
Locatie: Варна, България / Milano, Italia
Berichten: 2.867
Code:
awk '/^Begin/{close(f);f=$2".txt"}f{print>f}' input
  #7 (permalink)  
Old 02-18-2008
sophiadun sophiadun is offline
Geregistreerde gebruiker
  
 

Join Date: Feb 2008
Posts: 10
Citaat:
Oorspronkelijk geplaatst door Lakris View Post
Begin dan de eerste verklaring (aaaaa) belandt in Object1.txt het tweede (bbbbbb) in Object2.txt enz. Wilt u laten genaamd Object-aaaaa.txt, Object-bbbbbb.txt etc?
Neem een kijkje op de while read line te bouwen. U kunt splitsen het op om meer te lezen dan een variabele ... of U kunt behandelen lijn als een array.
Nee, ik niet willen dat ze de naam Object-aaaaa.txt. Moet worden genoemd als aaaaa.txt


Bedankt
Closed Thread

Bladwijzers

Labels
linux, ubuntu

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 11:50.


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