Εάν χρησιμοποιείτε το κέλυφος Bash για ένα αξιοπρεπές χρονικό διάστημα, ίσως γνωρίζετε πώς να εκτυπώσετε συμβολοσειρές στο τερματικό Linux χρησιμοποιώντας την εντολή echo. Η εντολή printf, ωστόσο, διευκολύνει την εκτύπωση κειμένου με συγκεκριμένη μορφοποίηση.
Σήμερα θα μάθουμε πώς να κάνουμε χρήση της λειτουργίας printf προκειμένου να βελτιώσουμε τις δεξιότητές μας στο σενάριο Bash.
Τι είναι η λειτουργία Bash printf;
Όπως υποδηλώνει το όνομα, το printf είναι μια συνάρτηση που εκτυπώνει μορφοποιημένες συμβολοσειρές κειμένου. Αυτό σημαίνει ότι μπορείτε να γράψετε μια δομή συμβολοσειράς (τη μορφή) και αργότερα να τη συμπληρώσετε με τιμές (τα ορίσματα).
Εάν είστε εξοικειωμένοι με τις γλώσσες προγραμματισμού C / C ++, ίσως γνωρίζετε ήδη πώς λειτουργεί το printf. Το Printf στο κέλυφος Bash είναι πολύ παρόμοιο, αλλά έχει μερικές μικρές διαφορές.
Μάθε περισσότερα: Καλύτεροι ιστότοποι για να ξεκινήσετε με τον προγραμματισμό C ++
Πώς να χρησιμοποιήσετε το printf στο Bash Shell
Η βασική σύνταξη για το printf είναι:
μορφή printf [όρισμα]
Το Printf θα εκτυπώσει το μορφή συμβολοσειρά κατά την εφαρμογή δραπετεύει (\) και οδηγίες (%) μέσω της χρήσης καθορισμένων επιχειρήματα. Σημειώστε την έξοδο της ακόλουθης εντολής:
$ printf "Γεια,% s" κόσμο
Γειά σου Κόσμε
Η Printf πήρε το κόσμος επιχείρημα και αντικατέστησε το %μικρό χαρακτήρα στην καθορισμένη συμβολοσειρά μαζί του.
Μπορεί να παρατηρήσετε ότι μετά την έξοδο, το Bash δεν δημιουργεί νέα γραμμή για εσάς. Σε αντίθεση με την εντολή echo, το printf δεν θα υποθέσει ότι θέλετε μια νέα γραμμή μετά την εκτύπωση της εξόδου. Έτσι, θα πρέπει να χρησιμοποιήσετε τον νέο χαρακτήρα γραμμής \ n σε κάθε περίπτωση.
Για να εκτυπώσετε μια συμβολοσειρά και μετά να μεταβείτε σε μια νέα γραμμή, πληκτρολογήστε printf "Γεια σου, κόσμος \ n".
Γειά σου Κόσμε
Είναι σημαντικό να θυμάστε ότι το printf θα προσπαθήσει να επαναχρησιμοποιήσει τη μορφή για όλα τα επιχειρήματά σας. Μπορείτε να το χρησιμοποιήσετε προς όφελός σας, αλλά εάν δεν είστε προσεκτικοί, μπορείτε να καταλήξετε σε αποτελέσματα όπως αυτό:
$ printf "Το όνομά μου είναι% s" Jordan Gloor
Το όνομά μου είναι Jordan Το όνομά μου είναι Gloor
Θα πρέπει επίσης να γνωρίζετε ότι εάν λείπει ένα όρισμα, το printf θα ερμηνεύσει τυχόν οδηγίες ως 0 (για έναν αριθμό) και μηδενικό (για μια συμβολοσειρά).
$ printf "Γεια σας,% s."
Χαίρετε, .
Τώρα που γνωρίζετε πώς λειτουργεί το σενάριο Bash με το printf στο Linux, είστε έτοιμοι να αρχίσετε να το χρησιμοποιείτε στις εντολές σας.
Παραδείγματα Linux Bash printf
Το Printf διαθέτει πολλούς προσδιοριστές μορφής που μπορείτε να χρησιμοποιήσετε στα σενάρια σας. Αλλά σήμερα θα καλύψουμε μόνο μερικά κοινά για τη λειτουργία.
1. Μορφοποίηση εξόδου με συμβολοσειρά
Για να μορφοποιήσετε την έξοδο με συμβολοσειρές κειμένου, χρησιμοποιήστε το %μικρό διευθυντικός.
$ printf "Το% s είναι ένα από τα μεγαλύτερα% s στο διαδίκτυο." MUO "εκδόσεις τεχνολογίας"
Το MUO είναι μια από τις μεγαλύτερες διαδικτυακές εκδόσεις τεχνολογίας.
2. Μορφοποίηση συμβολοσειράς εξόδου με δεκαδικά ψηφία
Για να μορφοποιήσετε μια συμβολοσειρά με ακέραιο, μπορείτε να χρησιμοποιήσετε το %ρε οδηγία για υπογεγραμμένο δεκαδικό.
$ printf "Το MUO ιδρύθηκε το% d." 2007
Η MUO ιδρύθηκε το 2007.
Σημειώστε ότι εάν θέλετε να χρησιμοποιήσετε ένα μη υπογεγραμμένο δεκαδικό στην έξοδο, θα πρέπει να χρησιμοποιήσετε το % εσύ αντ 'αυτού οδηγία.
Σχετιζομαι με: Τι σημαίνει το "Bash" στο Linux;
3. Εξαγωγή μαθηματικών συναρτήσεων χρησιμοποιώντας printf
Η διαμόρφωση των μαθηματικών συναρτήσεων με την εντολή printf είναι εύκολη. Απλώς τοποθετήστε την έκφρασή σας μέσα σε διπλές παρενθέσεις όπως συνήθως στο Bash και καθορίστε την έκφραση στη λίστα ορισμάτων.
$ printf "1 + 1 είναι% d" $ ((1 + 1))
1 + 1 είναι 2
4. Μορφοποίηση δεκαεξαδικών αριθμών
Εάν πρέπει να μορφοποιήσετε έναν δεκαεξαδικό αριθμό, χρησιμοποιήστε το %Χ για πεζά και %Χ για κεφαλαία.
$ printf% X 1000
3E8C
5. Εκτύπωση ημερομηνίας και ώρας
Για να εκτυπώσετε την τρέχουσα ημερομηνία και ώρα, μπορείτε να συνδυάσετε το printf με το ημερομηνία εντολή και περάστε τις ακόλουθες οδηγίες.
$ printf "% (% m-% d-% Y% H:% M:% S) T" $ (ημερομηνία +% s)
03-26-2021 15:27:57
Μπορείτε να δείτε τους προσδιοριστές μορφής για μήνα, ημέρα, έτος, ώρα, λεπτό και δευτερόλεπτο στην προαναφερθείσα έξοδο.
6. Μορφοποίηση συμβολοσειρών με χαρακτήρες Unicode
Για να εκτυπώσετε χαρακτήρες Unicode με printf, χρησιμοποιήστε το εσύ διαφυγή για 16-bit Unicode και \ Ε για 32-bit Unicode.
Για παράδειγμα, μπορείτε να εκτυπώσετε το πνευματική ιδιοκτησία σύμβολο με την ακόλουθη εντολή:
$ printf "\ u00A9"
©
7. Προσθέστε το διάστημα στην έξοδο
Μπορείτε να μορφοποιήσετε τις συμβολοσειρές σας με διαστήματα καθορίζοντας, πριν από τον προσδιοριστή οδηγίας, έναν ελάχιστο αριθμό χαρακτήρων που εκτυπώνονται. Οι αχρησιμοποίητοι χαρακτήρες θα συμπληρωθούν με κενά.
Για παράδειγμα, πληκτρολογώντας printf "% s:% 5d \ n" "Αξία 1" 25 "Αξία 2" 120 θα παράγει:
Αξία 1: 25
Τιμή 2: 120
ο % 5δ προσδιοριστής μορφής στην έξοδο δηλώνει ότι η μορφοποιημένη συμβολοσειρά θα περιέχει τουλάχιστον πέντε χαρακτήρες. Δεδομένου ότι το 25 έχει μόνο δύο ψηφία, τα κενά προστίθενται στους υπόλοιπους χαρακτήρες.
Εάν περάσετε έναν αρνητικό αριθμό ως πλάτος, η οδηγία θα είναι αριστερή και όχι δεξιά.
$ printf "% -10s:% d" "Κύκλοι" 25 "Κουτιά" 120
Κύκλοι: 25 κουτιά: 120
Εάν θέλετε να κάνετε τη μεταβλητή πλάτους, μπορείτε να περάσετε έναν αστερίσκο αντί για έναν αριθμό και το printf θα χρησιμοποιήσει τον επόμενο αριθμό που βρίσκει στη λίστα ορισμάτων.
$ printf "% * s:% d" -10 "Κύκλοι" 25 -10 "Κουτιά" 120
Κύκλοι: 25 κουτιά: 120
Σχετιζομαι με: Όλα όσα πρέπει να ξέρετε για το Bash For Loops στο Linux
Εκμάθηση της εντολής printf Linux
Με την εντολή printf στη ζώνη βοηθητικών προγραμμάτων scripting Bash, είστε έτοιμοι να ξεκινήσετε την εκτύπωση σύνθετων και διαφορετικών χορδών στο τερματικό σας. Καθώς αναπτύσσετε τα σενάρια Bash, είναι σημαντικό να βεβαιωθείτε ότι εργάζεστε στο πιο παραγωγικό περιβάλλον. Αυτό όχι μόνο θα βελτιώσει τις δεξιότητές σας στη γραμμή εντολών, αλλά θα βελτιώσει επίσης τη ροή εργασίας σας γενικά.
Είστε έτοιμοι να ξεκινήσετε την ανάπτυξη σε λειτουργικό σύστημα ανοιχτού κώδικα; Εδώ είναι οι καλύτερες διανομές Linux για προγραμματισμό.
Διαβάστε Επόμενο
- Linux
- Linux Bash Shell
- Εντολές Linux
Ο Jordan είναι δάσκαλος και δημοσιογράφος που είναι παθιασμένος να κάνει το Linux προσβάσιμο και χωρίς άγχος για όλους. Έχει πτυχίο στα αγγλικά και ένα ζεστό τσάι. Κατά τη διάρκεια των ζεστών εποχών, απολαμβάνει ποδηλασία στους λόφους του Ozarks όπου ζει.
Εγγραφείτε στο Newsletter μας
Εγγραφείτε στο ενημερωτικό δελτίο μας για τεχνικές συμβουλές, κριτικές, δωρεάν ebook και αποκλειστικές προσφορές!
Ένα ακόμη βήμα…!
Επιβεβαιώστε τη διεύθυνση email σας στο email που μόλις σας στείλαμε.