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 > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
Hoe verplaats bestand pointer naar een bepaalde regel in c user_prady Hoog Niveau Programmering 7 03-27-2008 12:32 AM
terugkeer van de vorige regel user_prady Programmeren en Shell Scripting 12 12-18-2007 07:37
hoe gaan vorige regel in vim useless79 UNIX for Advanced & Expert Gebruikers 2 09-16-2007 08:10
zoeken en ophalen van vorige regel in bestand paulsew Programmeren en Shell Scripting 2 02-23-2007 08:04
Vorige dag datum in Perl? rajus19 Programmeren en Shell Scripting 4 07-18-2006 12:40 AM

 
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 01-24-2008
tqlam tqlam is offline
Geregistreerde gebruiker
  
 

Join Date: juli 2004
Posts: 12
Perl hoe aanwijzer te verplaatsen naar de vorige regel in een txt bestand?

Ik heb een tekstbestand dat blokken tekst heeft. Elk blok begint met # # # en eindigt met End_ # # #.
Ik schreef een perl script om een string van lijn 2 zoeken (negeren elke lijn begint met # # #) van elk blok
indien gekoppeld, moeten drukken dat hele blok. Volgens de input bestand in hieronder, te drukken blokken # 02, # 04, # 05.
Hier is mijn vraag, ik heb geen problemen met het afstemmen van de SEARCH_STR, maar eenmaal gepaard, hoe verplaats ik terug vorige lijnen?
bijvoorbeeld in blok # 02, afgestemd op lijn 3, maar ik moet lijnen 1 & 2 te drukken.

Thanks in advance for any help!

Mijn script:
\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d
#! / 46020/local/bin /perl -w
#
if ($ # ARGV! \u003d 0) (
print "U moet een zoekopdracht. \ n";
exit;
)
my $ query \u003d $ ARGV [0];
my $ input \u003d "/ mypath / inputFILE.txt";
my $ line;
my $ tag \u003d 0;
my @ results \u003d ();

open (FILE, "<$ INPUT") or die "Can't open 'bestand $ input': $!";
while ($ line \u003d <FILE>) (
next if ($ line \u003d ~ / ^ # [0-9] [0-9] .* - / | | $ line \u003d ~ / ^ \ s *$/);
if ($ line \u003d ~ / $ query / i) (
$ tag \u003d 1;
)
if ($ line \u003d ~ / ^ End_ # / & & $ tag \u003d\u003d 1) (
push (@ results, $ line) if ($ tag \u003d\u003d 1);
$ tag \u003d 0;
)
push (@ results, $ line) if ($ tag \u003d\u003d 1);
)
close (FILE);
print "@ resultaten \ n";
exit;


Invoerbestand:
\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d
# 01 - blok startlijn hier
hier wat tekst
meer tekst hier
meer regels
meer regels
meer regels
End_ # 01

# 02 - blok startlijn hier
hier wat tekst
Deze regel bevat de SEARCH_STR en iets
meer regels
meer regels
End_ # 02

# 03 - blok startlijn hier
hier wat tekst
meer tekst hier
meer regels
meer regels
meer regels
End_ # 03

# 04 - blok startlijn hier
hier wat tekst
meer regels
meer regels
de SEARCH_STR is hier en iets
hier wat tekst
meer regels
meer regels
meer regels
End_ # 04

# 05 - blok startlijn hier
hier wat tekst
meer regels
de SEARCH_STR is hier en iets
meer regels
End_ # 05


# 06 - blok startlijn hier
hier wat tekst
meer tekst hier
meer regels
meer regels
meer regels
End_ # 06
 

Bladwijzers

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 04:38.


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