Saat melakukan troubleshoot atau membuat shell script, terkadang saya butuh untuk mengambil string yang ada didalam suatu file seperti log ataupun file lainnya.
Cara yang paling umum digunakan adalah menggunakan grep
, contoh sederhana saya ingin mencari string tosabyte didalam file log nginx. Maka saya akan menggunakan perintah:
grep tosabyte /var/log/nginx/access.log
Tapi tahukah kamu kalau ternyata ada cara lain selain menggunakan grep
untuk mengambil string yang ada didalam file? Caranya yaitu dengan menggunakan awk
ataupun sed
.
Contohnya seperti berikut, kita masih dengan contoh yang sama yaitu mencari string tosabyte didalam file log nginx.
Mencari string dengan menggunakan awk:
awk /tosabyte/ /var/log/nginx/access.log
Mencari string dengan menggunakan sed:
sed '/tosabyte/!d' /var/log/nginx/access.log
Sekarang kamu mempunyai alternatif lain selain grep
untuk mencari string dari file di Linux. Semoga membantu.