The UNIX and Linux Forums  

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
transformeren van een meerregelige record aan enkele lijn anju Programmeren en Shell Scripting 9 01-14-2008 07:55
voeg ruimtes op de eerste regel gebaseerd op een tweede record. munitie Programmeren en Shell Scripting 2 11-16-2007 03:35
Het vinden van een karakter in de eerste regel van een record bsandeep_80 Programmeren en Shell Scripting 14 07-26-2007 12:04
Resultaat een extra record / line srivsn Bestandssystemen, schijven en geheugen 1 05-06-2006 10:35
How to extract laatste regel in recordtijd bjorb Programmeren en Shell Scripting 7 10-18-2005 03:12

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 06-05-2008
PacificWonder PacificWonder is offline
Geregistreerde gebruiker
  
 

Join Date: juni 2008
Posts: 10
AWK - als laatste regel / record iets doen

Hallo:

Ik probeer voor het uitvoeren van een bepaalde actie, als het huidige record wordt de laatste regel van het input bestand. Maar ik ben niet in staat om uit te vinden hoe het bepalen van de laatste regel van een bestand in awk.

Ik moet iets doen als dit:
awk '(if (lastline \u003d\u003d NR) Do Something)' myfile.txt

Ik heb geprobeerd de volgende in een Korn shell script.

lastRec \u003d `wc-l myfile.txt | awk '(print $ 1)'`
print $ lastRec

awk-v aLastRec \u003d "$ lastRec" (if (NR \u003d\u003d $ aLastRec) print NR ": Dit is het laatste record!") '


Maar ik kon het niet laten om te erkennen dat lastRec $ of $ aLastRec.

Kunt u helpen?

Bedankt.
  #2 (permalink)  
Old 06-05-2008
rubin's Avatar
Rubin rubin is offline Forum Advisor  
Geregistreerde gebruiker
  
 

Join Date: november 2007
Posts: 321
U kunt gebruik maken van de EIND verklaring voor toegang tot het laatste record van het bestand:


Code:
awk  'END{ print "this is the last line :  ", $0, "  | and NR  is -> " NR, "do something else here..." }' myfile.txt

En geen gebruik maken van $ teken binnen awk:


Code:
lastRec=`awk 'END{print NR}' myfile.txt`

awk -v aLastRec="$lastRec" '{if (NR == aLastRec) ... }' myfile.txt

  #3 (permalink)  
Old 06-05-2008
PacificWonder PacificWonder is offline
Geregistreerde gebruiker
  
 

Join Date: juni 2008
Posts: 10
Koel. Ik over de $ fout in awk deel van het script. Uw voorstel voor een oplossing werkt! Thanks a lot for your help Rubin.
  #4 (permalink)  
Old 06-06-2008
danmero danmero is online now Forum Advisor  
  
 

Join Date: november 2007
Locatie: 45.48-73.63
Berichten: 1.442
staart kan het werk doen hier

Code:
test `tail -1 data.file`=="pattern" && echo OK || echo NOK

Closed Thread

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 02:09 PM.


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