The UNIX and Linux Forums  

Go Back   UNIX e Linux Forum > Inizio Forum > Shell scripting e di programmazione
.
google unix.com



Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui.

Più di UNIX e Linux Forum Argomenti potreste trovare utili
Filo Thread Starter Forum Risposte Ultimo Post
trasformare un record multilinea a linea singola Anju Shell scripting e di programmazione 9 01-14-2008 07:55 AM
aggiungendo spazi di prima linea basata sui secondi di registrazione. ammu Shell scripting e di programmazione 2 11-16-2007 03:35 AM
Trovare un personaggio in prima linea di un record bsandeep_80 Shell scripting e di programmazione 14 07-26-2007 12:04 PM
Risultati un record / linea srivsn Filesystem, memoria e dischi 1 05-06-2006 10:35 AM
come estrarre l'ultima linea di record bjorb Shell scripting e di programmazione 7 10-18-2005 03:12 AM

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 Cerca in questo Thread Rate Thread Modalità di visualizzazione
  #1 (permalink)  
Old 06-05-2008
PacificWonder PacificWonder is offline
Utente Registrato
  
 

Iscriviti Data: giugno 2008
Interventi: 10
AWK - se l'ultima riga / record fare qualcosa

Ciao:

Sto cercando di eseguire una determinata azione, se il record corrente è l'ultima riga del file di input. Ma io non sono in grado di capire il modo per determinare l'ultima riga di un file in awk.

Ho bisogno di fare qualcosa di simile a questo:
awk '(if (NR \u003d\u003d lastline) Do Something)' miofile.txt

Ho cercato le seguenti in un Korn shell script.

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

awk-v aLastRec \u003d "$ lastRec" '(if (NR \u003d\u003d $ aLastRec) NR stampa ": Questo è l'ultimo record!")'


Ma non ho potuto farlo riconoscere il lastRec o $ $ aLastRec.

Can you please help?

Grazie.
  #2 (permalink)  
Old 06-05-2008
rubin's Avatar
Rubin rubin is offline Forum Advisor  
Utente Registrato
  
 

Iscriviti Data: novembre 2007
Interventi: 321
È possibile utilizzare la dichiarazione di accedere FINE l'ultimo record del file:


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

E non usare $ segno all'interno awk:


Codice:
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
Utente Registrato
  
 

Iscriviti Data: giugno 2008
Interventi: 10
Fresco. Ho trascurato la awk $ errore nella parte dello script. La tua proposta di soluzione funziona! Thanks a lot for your help Rubin.
  #4 (permalink)  
Old 06-06-2008
danmero danmero is offline Forum Advisor  
  
 

Iscriviti Data: novembre 2007
Ubicazione: 45,48-73,63
Messaggi: 1.441
coda può fare il lavoro qui

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

Closed Thread

Segnalibri

Thread Tools Cerca in questo Thread
Cerca in questo Thread:

Ricerca Avanzata
Modalità di visualizzazione Vota questo thread
Vota questo thread:

Distacco regolamento
Tu non può post nuovo thread
Tu non può inviare una risposta
Tu non può postare allegati
Tu non può modificare i tuoi post

BB codice è Su
Smilies sono Su
[IMG] codice Su
Codice HTML è Chiuso
Trackbacks sono Su
Pingbacks sono Su
Refbacks sono Su




Tutti gli orari sono GMT -4. La data di oggi è 02:25 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traduzioni Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX e Linux Forum Content Copyright © 1993-2009. Tutti i diritti Reserved.Ad di gestione da RedTyger

Contenuti pertinenti URL da vBSEO 3.2.0