Προσθέστε εύκολα αριθμούς γραμμής σε αρχείο κειμένου με τη γραμμή εντολών
Ο Μπράιαν ρωτά: «Πρέπει να προσθέσω αριθμούς γραμμών σε ένα αρχείο κειμένου. Δεν εννοώ αριθμούς γραμμών στο πρόγραμμα επεξεργασίας κειμένου, εννοώ την προσθήκη ενός αριθμού δίπλα σε κάθε στοιχείο μέσα σε ένα αρχείο κειμένου. Είναι δυνατό να αυτοματοποιηθεί ή πρέπει να επεξεργαστώ το αρχείο με μη αυτόματο τρόπο πληκτρολογώντας 1, 2, 3 και τρελαίνομαι;”
Ναι, μπορείτε εύκολα να κωδικοποιήσετε αριθμούς γραμμής σκληρού κώδικα σε ένα αρχείο κειμένου… θα σας δείξουμε ακριβώς πώς να το κάνετε! Για να είμαστε απολύτως σαφείς, αυτό που πρόκειται να κάνει είναι να προσθέσουμε έναν αριθμό γραμμής μέτρησης στην αριστερή πλευρά κάθε νέας γραμμής κειμένου, βάζοντας πρόθεμα σε κάθε γραμμή με τον κατάλληλο αντίστοιχο αριθμό.Αυτός ο σκληρός κώδικας το κωδικοποιεί στο αρχείο κειμένου, πράγμα που σημαίνει ότι διαφέρει από την απλή εμφάνιση αριθμών γραμμών σε μια εφαρμογή όπως το TextWrangler, το VIM ή το BBEdit.
Για να ξεκινήσετε, μεταβείτε στο Terminal και θα θέλετε να κάνετε τα εξής στη γραμμή εντολών:
Χρήση της γάτας για προσθήκη αριθμών γραμμής σε αρχείο κειμένου
Αυτή είναι μακράν η πιο εύκολη μέθοδος: cat -n αρχείο > file_new
Απλώς αντικαταστήστε το "αρχείο" με το όνομα αρχείου στο οποίο θέλετε να προσθέσετε αριθμούς γραμμής και αλλάξτε το "όνομα_αρχείου" στο εξαγόμενο όνομα.
Μπορείτε επίσης να χρησιμοποιήσετε την εντολή ‘nl’ όπως περιγράφεται παρακάτω:
Αριθμοί γραμμής σκληρού πυρήνα σε αρχείο κειμένου χρησιμοποιώντας την εντολή nl
Ξανά, αντικαταστήστε το "όνομα αρχείου" και το "αρχείο με αρίθμηση" με το κατάλληλο όνομα του αρχείου στο οποίο προσθέτετε αριθμούς γραμμής:
nl -ba -s ': ' όνομα αρχείου > όνομα αρχείου με αρίθμηση
Αυτό είναι όλο! Μπορείτε να χρησιμοποιήσετε οποιοδήποτε κόλπο. Αρκετοί αναγνώστες συμφώνησαν στα σχόλια για να δώσουν ευκολότερες λύσεις στην αρίθμηση γραμμών σε ένα αρχείο κειμένου. Αναφέρθηκαν παραπάνω με σειρά απλότητας, αλλά θα προσφέρουμε επίσης μια λύση "awk" παρακάτω.
-
Μπορείτε επίσης να χρησιμοποιήσετε το εργαλείο γραμμής εντολών "awk", αλλά είναι λίγο πιο περίπλοκο από τις μεθόδους που αναφέρθηκαν παραπάνω, αν σας ενδιαφέρει ξεκινήστε το Terminal και φύγαμε.
Πρώτον, φροντίστε να δημιουργήστε αντίγραφα ασφαλείας του αρχείου κειμένου σε περίπτωση που κάτι πάει στραβά (όπως ένα συντακτικό σφάλμα). Τώρα που δημιουργήσατε αντίγραφο ασφαλείας του εν λόγω αρχείου κειμένου, ας γράψουμε τους αριθμούς γραμμών απευθείας σε αυτό:
"awk &39;{printf(%5d : %s\n, NR, $0)}&39; όνομα αρχείου > όνομα αρχείου με αρίθμηση "
Το filename είναι το αρχικό αρχείο και το filenamenumbered είναι ό,τι θέλετε να καλέσετε την έξοδο της εντολής awk με τους αριθμούς γραμμής συνδεδεμένους σε αυτό. Το έγγραφο κειμένου εξόδου θα έχει πλέον έναν αριθμό ακολουθούμενο από άνω και κάτω τελεία πριν από κάθε στοιχείο γραμμής:
1: γραμμή με λέξεις 2: γραμμή με λέξεις 3: γραμμή με λέξεις
Το αρχικό αρχείο κειμένου σας θα πρέπει να παραμείνει αμετάβλητο, αλλά αν κάνατε κάποιο συντακτικό σφάλμα, το αντίγραφο ασφαλείας που δημιουργήσατε θα σώσει τη μέρα σας. Αυτή η εντολή θα λειτουργεί σε οποιοδήποτε λειτουργικό σύστημα Unix που έχει υποστήριξη awk, γι' αυτό μη διστάσετε να εκτελέσετε αυτήν την εντολή σε FreeBSD, Linux, Mac OS X ή όποια άλλη παραλλαγή μπορείτε να σκεφτείτε.