Respostas:
Você não precisa cat.
head -1 file
vai funcionar bem.
headler o arquivo inteiro e cortá-la, ou ele lê apenas a linha 1?
cat <(head file1) <(head file2). Fonte
Você poderia usar cat file.txt | head -1, mas provavelmente seria melhor usar a cabeça diretamente, como em head -1 file.txt.
catsozinho pode não ser possível, mas se você não quiser usar headisso funciona:
cat <file> | awk 'NR == 1'
cat, não é?
awké ótimo, mas você não precisa cataqui. awk 'NR == 2 {print $0}' <file>faz a mesma coisa. (E muito mais, se você aprender um pouco awk.
Estou surpreso que essa pergunta já exista há muito tempo e ninguém forneceu a abordagem interna de pré-mapfile ainda.
IFS= read -r first_line <file
... coloca a primeira linha do arquivo na variável expandida por "$first_line", fácil assim.
Além disso, como readé incorporado ao bash e esse uso não requer sub-shell, é significativamente mais eficiente do que abordagens que envolvem subprocessos como headou awk.
IFS=parte do começo?
IFSevita que os espaços em branco à esquerda e à direita sejam removidos da sequência lida.
Use o comando abaixo para obter a primeira linha de um arquivo CSV ou de qualquer formato de arquivo.
head -1 FileName.csv