Baca baris pertama file menggunakan bash


8

Adakah yang tahu tentang liner sederhana untuk membaca baris pertama file di bash?

Jawaban:


24
read -r FIRSTLINE < filename

Hasil yang sama dengan jawaban yang lain tetapi lebih cepat karena tidak menghasilkan proses apa pun, karena "baca" adalah perintah bash bawaan.


good point, +1 for you
drAlberT

Ini melakukan jauh lebih baik daripada melakukan 'head -n 1'. Saya sedang membaca baris pertama dari 265 file dan waktu saya berjalan dari sekitar 15 detik menjadi kurang dari 1 detik
s3v1


6
FIRSTLINE=`head -n 1 filename`

Menyimpan baris dalam variabel untuk digunakan nanti (perhatikan tanda kutip terbalik).


5
$ (command) adalah bentuk alternatif yang menghindari penggunaan back ticks, bahkan tidak mudah ditemukan pada keyboard tertentu.
drAlberT

1
jawaban yang bagus, tapi saya memilih karena jawaban e-t172 lebih baik. Baca dimaksudkan untuk ini, dan itu built-in untuk bash, seperti katanya.
Lee B

2
nah, memilih "jawaban yang baik" karena itu bukan yang terbaik yang mungkin tidak begitu sopan menurut Anda?
drAlberT

3
Lee - Kenapa tidak memilih yang Anda sukai saja? Downvotes hanya boleh diberikan untuk informasi yang faktanya salah atau dari topik.
MDMarra


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

1
ini akan memindai file lengkap, lalu mengembalikan baris pertama, yang tidak efisien untuk file besar. baca -r lebih baik.
Richard
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.