Leggi la prima riga di un file usando bash


8

Qualcuno sa di una semplice riga per leggere la prima riga di un file in bash?

Risposte:


24
read -r FIRSTLINE < filename

Stesso risultato delle altre risposte ma più veloce perché non genera alcun processo, poiché "read" è un comando bash incorporato.


buon punto, +1 per te
drAlberT

Ciò si comporta molto meglio rispetto a "head -n 1". Stavo leggendo la prima riga di 265 file e il mio tempo è passato da circa 15 secondi a meno di 1 secondo
s3v1


6
FIRSTLINE=`head -n 1 filename`

Memorizza la linea in una variabile per un uso successivo (notare gli apostrofi invertiti).


5
$ (comando) è una forma alternativa che evita l'uso di back tick, non è nemmeno semplice da trovare su alcune tastiere.
drAlberT,

1
buona risposta, ma voto in basso perché la risposta di e-t172 è migliore. Leggere è inteso per questo, ed è integrato per bash, come dice.
Lee B,

2
nah, votare una "buona risposta" perché non è la migliore possibile, non è così educato, non credi?
drAlberT,

3
Lee - Perché non solo votare quello che ti piace invece? I downgrade devono essere dati solo per informazioni di fatto errate o cose fuori tema.
MDMarra,


1
awk 'NR == 1' /etc/passwd

1
questo eseguirà la scansione del file completo, quindi restituirà la prima riga, che è inefficiente per file di grandi dimensioni. leggere -r è meglio.
Richard
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.