Risposte:
Non hai bisogno cat
.
head -1 file
funzionerà bene.
head
leggere l'intero file e tagliarla, o ha letto solo la linea 1?
cat <(head file1) <(head file2)
. Fonte
Potresti usare cat file.txt | head -1
, ma probabilmente sarebbe meglio usare direttamente la testa, come in head -1 file.txt
.
cat
da solo potrebbe non essere possibile, ma se non si desidera utilizzare head
questo funziona:
cat <file> | awk 'NR == 1'
cat
, non è vero?
awk
è fantastico, ma non è necessario cat
qui. awk 'NR == 2 {print $0}' <file>
fa la stessa cosa. (E molto altro, se impari un po ' awk
.
Sono sorpreso che questa domanda sia in circolazione da sempre e nessuno ha ancora fornito l'approccio integrato pre-mapfile.
IFS= read -r first_line <file
... inserisce la prima riga del file nella variabile espansa "$first_line"
, facile come quella.
Inoltre, poiché read
è incorporato in bash e questo utilizzo non richiede subshell, è significativamente più efficiente degli approcci che coinvolgono sottoprocessi come head
o awk
.
IFS=
parte all'inizio?
IFS
impedisce che gli spazi bianchi iniziali e finali vengano rimossi dalla stringa letta.
Utilizzare il comando seguente per ottenere la prima riga da un file CSV o qualsiasi formato di file.
head -1 FileName.csv