Linux για την ανάλυση αρχείων

Χρησιμοποιώντας την εντολή awk, μπορείτε να αναζητήσετε στοιχεία σε αρχεία και να εκτελέσετε συγκεκριμένες ενέργειες. Η προέλευση αυτής της εντολής του Linux χρονολογείται από το 1977.

Τι είναι η εντολή awk στο Linux;

Το Linux διαθέτει μια γλώσσα προγραμματισμού και σενάριων που μπορείτε να χρησιμοποιήσετε για την ανάλυση και την επεξεργασία αρχείων. Ονομάζεται awk και οι ρίζες της ανάγονται στο μακρινό 1977. Το όνομά της προέρχεται από τα αρχικά των τριών προγραμματιστών: Alfred Aho, Peter Weinberger και Brian Kernighan. Μπορείτε να χρησιμοποιήσετε εύκολα το εργαλείο μέσω της γραμμής εντολών ή του SSH (Secure Shell). Όπως και όταν χρησιμοποιείτε την εντολή grep του Linux, μπορείτε να χρησιμοποιήσετε την εντολή awk για να αναζητήσετε συγκεκριμένα μοτίβα σε αρχεία και, στη συνέχεια, εάν πληρούνται άλλες προϋποθέσεις, να τα επεξεργαστείτε.

Πώς λειτουργεί η εντολή awk;

Το Awk χρησιμοποιεί έναν συνδυασμό συνθηκών και εντολών. Όταν εκτελείται η εντολή, το πρόγραμμα εξετάζει το αρχείο γραμμή προς γραμμή αναζητώντας συγκεκριμένες συνθήκες. Εάν εντοπίσει αυτές τις συνθήκες σε μια γραμμή, εκτελεί την αντίστοιχη εντολή. Εάν δεν έχει οριστεί καμία συνθήκη, τότε η εντολή εκτελείται σε κάθε γραμμή. Εάν δεν εισαγάγετε εντολή, εκτελείται η τυπική εντολή από τη γραμμή εισαγωγής. Αυτό σημαίνει ότι μπορείτε να χρησιμοποιήσετε το Linux awk για να αναζητήσετε συγκεκριμένους όρους ή παραδείγματα σε αρχεία.

Πώς είναι η σύνταξη της awk;

Η σύνταξη της εντολής awk στο Linux έχει ως εξής:

$ awk [Options] "Operation {Instructions}" [Target file]
shell

Ποιες επιλογές διαθέτει η εντολή awk;

Έχετε τρεις επιλογές στη διάθεσή σας:

  • -F [Διαχωριστικό]: Μπορείτε να χρησιμοποιήσετε αυτήν την επιλογή για να ορίσετε ένα διαχωριστικό μεταξύ των αρχείων. Συνήθως πρόκειται για ένα μόνο κενό διάστημα.
  • -f [Όνομα αρχείου]: Μπορείτε να χρησιμοποιήσετε αυτήν την επιλογή για να ορίσετε σε ποιο αρχείο θέλετε να εκτελέσετε την εντολή awk.
  • -v: Χρησιμοποιήστε αυτήν την επιλογή για να προσθέσετε μια μεταβλητή.

Παραδείγματα της εντολής awk

Για να κατανοήσετε καλύτερα πώς μπορείτε να χρησιμοποιήσετε το ask, ακολουθούν μερικά παραδείγματα. Σε αυτή την περίπτωση χρησιμοποιούμε ένα αρχείο με το όνομα example.txt, το οποίο περιλαμβάνει μια λίστα με πόλεις, χώρες και ηπείρους σε ξεχωριστές στήλες. Έχει την εξής μορφή:

City Country Continent
Washington D.C USA America
Paris France Europe
Hanoi Vietnam Asia
Abuja Nigeria Africa
shell

Αν θέλετε να εξάγετε ολόκληρο το αρχείο, πρέπει να χρησιμοποιήσετε την ακόλουθη εντολή:

$ awk "{print $0}" example.txt
shell

Ωστόσο, αν θέλετε απλώς να δείτε μεμονωμένες στήλες, μπορείτε να χρησιμοποιήσετε μια ξεχωριστή εντολή. Στην περίπτωσή μας, πρόκειται για την πρώτη και την τρίτη στήλη:

$ awk "{print $1, $3}" example.txt
shell

Αυτό θα εμφανίσει το ακόλουθο αποτέλεσμα:

Washington D.C America
Paris Europe
Hanoi Asia
Abuja Africa
Go to Main Menu