GNU/Linux >> Belajar Linux >  >> Linux

Perintah Head and Tail di Linux Dijelaskan dengan Contoh

Mendapatkan sebagian teks dari file input di Linux adalah operasi umum. Namun, terkadang, kami tertarik untuk melihat hanya beberapa baris file. Linux memberi kita perintah head dan tail untuk mencetak hanya baris yang kita minati.

Daftar Isi

  • Perintah Kepala di Linux
    • Mengeluarkan Jumlah Baris Tertentu Menggunakan Perintah kepala
    • Mengeluarkan Jumlah Byte Tertentu Menggunakan Perintah kepala
    • Mengeluarkan Banyak File Menggunakan Perintah kepala
    • Cara Menggunakan Perintah kepala dengan Pipa
  • Perintah Ekor di Linux
    • Mengeluarkan Jumlah Baris Tertentu Menggunakan Perintah ekor
    • Cara Menggunakan Perintah ekor dengan Pipa
    • Menonton File untuk Perubahan Menggunakan Tail Command
  • Cara Menggunakan Perintah head dan tail Bersama-sama di Linux
  • Kesimpulan

Linux head dan tail perintah sangat mirip. Mereka secara default, diinstal di semua distribusi Linux. Pertama-tama mari kita pahami apa itu dan kegunaannya.

Singkatnya, seperti namanya, head perintah mencetak baris dari awal file, dan tail perintah mencetak baris dari akhir file. Kedua perintah menulis hasilnya ke output standar.

Sekarang, mari pelajari cara menggunakannya melalui contoh.

Perintah Kepala di Linux

Sintaks dari head perintahnya cukup mudah:

head [OPTIONS] FILES

Secara default, tanpa opsi apa pun , head perintah akan menampilkan 10 baris pertama dari file. Seperti ini.

head /etc/passwd
root:x:0:0::/root:/bin/bash
bin:x:1:1::/:/usr/bin/nologin
daemon:x:2:2::/:/usr/bin/nologin
mail:x:8:12::/var/spool/mail:/usr/bin/nologin
ftp:x:14:11::/srv/ftp:/usr/bin/nologin
http:x:33:33::/srv/http:/usr/bin/nologin
nobody:x:65534:65534:Nobody:/:/usr/bin/nologin
dbus:x:81:81:System Message Bus:/:/usr/bin/nologin
systemd-journal-remote:x:982:982:systemd Journal Remote:/:/usr/bin/nologin
systemd-network:x:981:981:systemd Network Management:/:/usr/bin/nologin

Tentu saja ada opsi yang dapat kita tentukan saat menjalankan perintah untuk mendapatkan output yang disesuaikan.

Mengeluarkan Jumlah Baris Tertentu Menggunakan Perintah kepala

Jika Anda ingin mengambil jumlah baris yang berbeda dari 10 default, maka -n opsi digunakan bersama dengan bilangan bulat yang memberi tahu jumlah baris yang akan diambil.

Misalnya, perintah berikut akan menampilkan 3 baris pertama dari /etc/passwd berkas.

head -n 3 /etc/passwd
root:x:0:0::/root:/bin/bash
bin:x:1:1::/:/usr/bin/nologin
daemon:x:2:2::/:/usr/bin/nologin

Mengeluarkan Jumlah Byte Tertentu Menggunakan Perintah head

Selain itu, head perintah juga dapat mencetak konten file per byte. Cukup lewati -c pilihan untuk perintah. Ingatlah bahwa baris baru dihitung sebagai satu karakter, jadi jika head mencetak baris baru, itu akan menghitungnya sebagai byte.

Misalnya, perintah berikut akan menampilkan 8 byte pertama dari /etc/passwd berkas.

head -c 8 /etc/passwd
root:x:0

Mengeluarkan Banyak File Menggunakan Perintah kepala

Tentu saja, head perintah juga dapat menangani banyak file. Misalnya, perintah berikut akan menampilkan 3 baris pertama /etc/passwd dan /etc/group file.

head -n 3 /etc/passwd /etc/group
==> /etc/passwd <==
root:x:0:0::/root:/bin/bash
bin:x:1:1::/:/usr/bin/nologin
daemon:x:2:2::/:/usr/bin/nologin

==> /etc/group <==
root:x:0:brltty,root
sys:x:3:bin
mem:x:8:

Menambahkan -q opsi untuk contoh di atas akan menghapus header yang memberikan nama file.

head -q -n 3 /etc/passwd /etc/group
root:x:0:0::/root:/bin/bash
bin:x:1:1::/:/usr/bin/nologin
daemon:x:2:2::/:/usr/bin/nologin
root:x:0:brltty,root
sys:x:3:bin
mem:x:8:

Cara Menggunakan Perintah kepala dengan Pipa

 head perintah dapat disalurkan ke perintah lain. Dalam contoh berikut, output dari ls perintah disalurkan ke head untuk menampilkan lima file atau folder yang paling baru dimodifikasi di /etc direktori.

ls -t /etc | head -n 5
ld.so.cache
resolv.conf
systemd
libreoffice
profile.d

Sekarang Anda seharusnya sudah memiliki pemahaman yang baik tentang cara menggunakan Linux head memerintah. Sekarang, mari kita lihat tail perintah.

Tail Command di Linux

Perintah Tail di Linux sama dengan head memerintah. Tidak seperti head perintah, namun, tail perintah mencetak beberapa baris terakhir (10 baris secara default) dari file tertentu.

Sintaks dasar perintah tail adalah:

tail [OPTIONS] FILES

Misalnya, perintah berikut akan mencetak 10 baris terakhir dari /etc/locale.gen berkas.

tail /etc/locale.gen
#zh_HK.UTF-8 UTF-8
#zh_HK BIG5-HKSCS
#zh_SG.UTF-8 UTF-8
#zh_SG.GBK GBK
#zh_SG GB2312
#zh_TW.EUC-TW EUC-TW
#zh_TW.UTF-8 UTF-8
#zh_TW BIG5
#zu_ZA.UTF-8 UTF-8
#zu_ZA ISO-8859-1

Mengeluarkan Jumlah Baris Tertentu Menggunakan Tail Command

Sama halnya dengan head perintah, Anda juga dapat mencetak beberapa baris terakhir menggunakan -n pilihan seperti yang ditunjukkan di bawah ini.

tail -n 3 /etc/locale.gen
#zh_TW BIG5
#zu_ZA.UTF-8 UTF-8
#zu_ZA ISO-8859-1

Cara Menggunakan Perintah ekor dengan Pipa

Sebelumnya, kami menyalurkan output dari head ke dalam ls . Kami juga dapat menyalurkan output dari perintah lain ke tail .

Misalnya, untuk mengidentifikasi lima file atau folder di /etc direktori dengan waktu modifikasi terlama, dan menyalurkan output ke tail :

ls -t /etc/ | tail -n 5
wpa_supplicant
libpaper.d
papersize
mdadm.conf
gssapi_mech.conf

Menonton File untuk Perubahan Menggunakan Tail Command

Ada satu lagi fitur hebat di tail memerintah. Terkadang file input yang ingin kita periksa berubah. Misalnya, aplikasi yang sedang berjalan dapat menambahkan outputnya ke file log. Jika kita menjalankan tail perintah dengan -f opsi pada file yang berubah, semua baris yang baru ditambahkan akan ditambahkan ke standar keluar. Ini mungkin merupakan opsi yang paling berguna dan umum digunakan untuk tail perintah.

Misalnya, Anda dapat melihat baris baru yang ditambahkan ke akhir file log Nginx, seperti yang ditambahkan, seperti ini:

tail -f /var/log/nginx/access.log
172.16.1.122 - - [08/Apr/2021:08:15:32 +0000] "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 109 "https://linuxwizard.com/wp-admin/post.php?post=18254&action=edit" "Mozilla/5.0 (X11; Linux x86_64; rv:87.0) Gecko/20100101 Firefox/87.0" 
172.16.1.122 - - [08/Apr/2021:08:19:27 +0000] "GET /feed/ HTTP/1.1" 304 0 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1" 
172.16.1.122 - - [08/Apr/2021:08:19:49 +0000] "HEAD /feed/ HTTP/1.1" 200 0 "-" "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36" 

Karena setiap entri log baru ditambahkan ke file log, tail akan memperbarui tampilannya di jendela terminal.

Cara Menggunakan Perintah head dan tail Bersama-sama di Linux

Sebagai tail dan head perintah mencetak bagian file yang berbeda, kita dapat menggabungkan keduanya untuk mencetak beberapa pemfilteran konten file tingkat lanjut. Misalnya, jika Anda ingin membaca konten dari tengah file apa pun, Anda harus menggunakan kedua perintah secara bersamaan.

Katakanlah kita ingin mendapatkan dari baris ke-5 hingga ke-10 dari /etc/passwd mengajukan. Pada awalnya, head perintah akan mengambil 10 baris pertama dan tail perintah akan mengambil 5 baris terakhir dari output head perintah.

head -n 10 /etc/passwd | tail -n 5
http:x:33:33::/srv/http:/usr/bin/nologin
nobody:x:65534:65534:Nobody:/:/usr/bin/nologin
dbus:x:81:81:System Message Bus:/:/usr/bin/nologin
systemd-journal-remote:x:982:982:systemd Journal Remote:/:/usr/bin/nologin
systemd-network:x:981:981:systemd Network Management:/:/usr/bin/nologin

Kesimpulan

Itu saja untuk saat ini. Dalam artikel ini kita telah mempelajari beberapa penggunaan umum dari kedua perintah melalui contoh. Seperti yang Anda lihat, keduanya tail dan head perintah sangat berguna untuk mengontrol dengan tepat konten file apa yang akan dicetak ke layar. Tentu saja, itu adalah perintah fleksibel yang dapat sangat meningkatkan pengelolaan file Anda. Cobalah.

Butuh lebih banyak detail? Periksa head dan tail memerintahkan halaman manual.


Linux
  1. Cara Menggunakan Perintah 'cat' dan 'tac' dengan Contoh di Linux

  2. Perintah Traceroute Linux, Dijelaskan dengan Contoh

  3. 20 Perintah Dasar Linux untuk Pemula Dijelaskan dengan Contoh

  1. 19 Perintah SSH Umum di Linux Dengan Contoh

  2. Perintah Linux - Gambaran Umum dan Contoh

  3. Perintah kepala Linux dengan Contoh

  1. Lembar Cheat Perintah Linux:Dengan Contoh

  2. Perintah Netstat di Linux - 28 Perintah dengan Contoh

  3. Perintah potong Linux Dijelaskan dengan 6 Contoh