AWK - Fitur Tingkat Lanjut
- 1127
- 326
- Miss Angelo Toy
AWK adalah alat pemrosesan dan manipulasi teks yang kuat yang menyediakan berbagai fitur canggih untuk pengguna yang berpengalaman. Beberapa fitur canggih yang paling berguna dari AWK termasuk ekspresi reguler, pernyataan bersyarat, array, fungsi, dan fungsi manipulasi string. Dengan fitur -fitur ini, AWK menyediakan toolset yang kuat dan fleksibel yang dapat digunakan untuk berbagai tugas, termasuk analisis file log, pemantauan sistem, ekstraksi dan transformasi data, dan pembuatan laporan.
Dalam artikel ini, kami akan mengeksplorasi beberapa fitur AWK yang paling berguna dan kuat untuk pengguna tingkat lanjut. Tutorial ini mencakup:
- Menggunakan ekspresi reguler di AWK
- Menggunakan pernyataan bersyarat
- Bekerja dengan Array di AWK
- Bekerja dengan fungsi di AWK
- Manipulasi string dengan canggung
Mari kita mulai artikelnya:
Ekspresi reguler
Salah satu fitur paling kuat dari AWK adalah dukungannya untuk ekspresi reguler. Ekspresi reguler adalah pola yang menggambarkan set string, dan dapat digunakan untuk mencocokkan, mencari, dan memanipulasi data teks.
Misalnya, perintah berikut akan mencetak semua baris yang berisi kata "kesalahan" dalam file log:
AWK '/ERROR/' LOGFILE.txt1 | AWK '/ERROR/' LOGFILE.txt |
Perintah ini akan menggunakan AWK untuk mencari file log untuk baris yang berisi kata "kesalahan", dan mencetak baris itu ke konsol.
Pernyataan bersyarat
AWK mendukung pernyataan bersyarat, yang memungkinkan Anda untuk menjalankan perintah yang berbeda berdasarkan nilai variabel atau ekspresi.
Misalnya, perintah berikut akan mencetak "bahkan" atau "ganjil" untuk setiap angka dalam file, tergantung pada apakah itu bahkan atau aneh:
awk 'if ($ 1 % 2 == 0) Cetak $ 1, "bahkan"; lain cetak $ 1, "ganjil" 'angka.txt1 | awk 'if ($ 1 % 2 == 0) Cetak $ 1, "bahkan"; lain cetak $ 1, "ganjil" 'angka.txt |
Perintah ini akan menggunakan AWK untuk memeriksa apakah setiap nomor dalam file bahkan atau ganjil, dan mencetak hasilnya ke konsol.
Array
AWK juga mendukung array, yang memungkinkan Anda untuk menyimpan dan memanipulasi set nilai atau struktur data.
Misalnya, perintah berikut akan menghitung jumlah kejadian setiap kata dalam file teks:
awk 'for (i = 1; i<=NF; i++) words[$i]++ END for (w in words) print w, words[w] ' textfile.txt1 | awk 'for (i = 1; i<=NF; i++) words[$i]++ END for (w in words) print w, words[w] ' textfile.txt |
Perintah ini akan menggunakan AWK untuk mengulangi setiap kata dalam file, dan menyimpan hitungan setiap kata dalam array. Hasil akhirnya dicetak ke konsol.
Fungsi
AWK mendukung fungsi yang ditentukan pengguna, yang memungkinkan Anda membuat kode yang dapat digunakan kembali untuk tugas umum.
Misalnya, perintah berikut akan menggunakan fungsi yang ditentukan pengguna untuk mengonversi suhu Fahrenheit menjadi Celcius:
fungsi awk 'f2c (f) return (f-32)*(5/9) print $ 1, f2c ($ 2)' suhu.txt1 | fungsi awk 'f2c (f) return (f-32)*(5/9) print $ 1, f2c ($ 2)' suhu.txt |
Perintah ini akan menggunakan AWK untuk membaca suhu di Fahrenheit dari file, dan mengubahnya menjadi Celcius menggunakan fungsi yang ditentukan pengguna.
Manipulasi string
AWK mendukung berbagai fungsi manipulasi string, yang memungkinkan Anda untuk memodifikasi, menggabungkan, dan membagi string.
Misalnya, perintah berikut akan membagi daftar nilai yang dipisahkan koma menjadi bidang terpisah:
AWK -F ', "Cetak $ 1, $ 2' Data.CSV1 | AWK -F ',' 'Cetak $ 1, $ 2' Data.CSV |
Perintah ini akan menggunakan AWK untuk membagi file yang dipisahkan koma menjadi bidang terpisah, dan mencetak dua bidang pertama ke konsol.
Kesimpulan
AWK menyediakan serangkaian fitur canggih untuk pengguna berpengalaman, termasuk ekspresi reguler, pernyataan bersyarat, array, fungsi, dan manipulasi string. Dengan menguasai fitur -fitur ini, Anda bisa menjadi ahli pemrosesan teks dan manipulasi yang lebih efisien dan efektif, dan menghemat waktu dan upaya dalam pekerjaan Anda.
- « Daftar Periksa Pemeliharaan Server
- Praktik dan tips terbaik untuk menulis skrip shell sebagai pro »