Odpowiedzi:
Nie trzeba cat.
head -1 file
będzie dobrze działać.
headczyta cały plik i wycina go, czy czyta tylko 1 linię?
cat <(head file1) <(head file2). Źródło
Możesz użyć cat file.txt | head -1, ale prawdopodobnie lepiej byłoby użyć bezpośrednio głowy, jak w head -1 file.txt.
catsamo może nie być możliwe, ale jeśli nie chcesz korzystać z headtego działa:
cat <file> | awk 'NR == 1'
cat, prawda?
awkjest świetna, ale cattutaj nie potrzebujesz . awk 'NR == 2 {print $0}' <file>robi to samo. (I wiele więcej, jeśli się trochę nauczysz awk.
Dziwię się, że pytanie to istniało tak długo, jak było, i nikt nie podał jeszcze wbudowanego podejścia do mapowania.
IFS= read -r first_line <file
... umieszcza pierwszy wiersz pliku w zmiennej rozwiniętej o "$first_line", to takie proste.
Co więcej, ponieważ readjest wbudowany w bash i takie użycie nie wymaga podpowłoki, jest znacznie wydajniejsze niż podejścia z udziałem podprocesów takich jak headlub awk.
IFS=część na początku?
IFSzapobiega usuwaniu wiodących i końcowych białych znaków z czytanego ciągu.
Użyj poniższego polecenia, aby uzyskać pierwszy wiersz z pliku CSV lub dowolnego formatu pliku.
head -1 FileName.csv