Εξαγωγή κειμένου στην οθόνη χρησιμοποιώντας την εντολή Linux Echo
Αυτός ο οδηγός σάς δείχνει πώς να εξάγετε κείμενο στο παράθυρο τερματικού χρησιμοποιώντας το Linux εντολή echo.
Χρησιμοποιείται από μόνη της στο τερματικό, η εντολή echo δεν είναι ιδιαίτερα χρήσιμη, αλλά όταν χρησιμοποιείται ως μέρος του σεναρίου μπορεί να χρησιμοποιηθεί για την εμφάνιση οδηγιών, σφαλμάτων και ειδοποιήσεων.
Παραδείγματα χρήσεων της εντολής Linux Echo
Στην απλούστερη μορφή του, ο ευκολότερος τρόπος εξόδου κειμένου στο τερματικό είναι ο εξής:
ηχώ "γεια σου κόσμε"
Η παραπάνω εντολή βγάζει τις λέξεις "Γειά σου Κόσμε" στην οθόνη (μείον τα εισαγωγικά).

Από προεπιλογή, η δήλωση echo βγάζει έναν νέο χαρακτήρα γραμμής στο τέλος της συμβολοσειράς.
Για να το δοκιμάσετε, δοκιμάστε την ακόλουθη πρόταση σε ένα παράθυρο τερματικού:
ηχώ "γεια κόσμο" && ηχώ "αντίο κόσμο"
Θα δείτε ότι το αποτέλεσμα είναι το εξής:
Γειά σου Κόσμε
αντίο κόσμε
Μπορείτε να παραλείψετε τον νέο χαρακτήρα γραμμής προσθέτοντας τον διακόπτη μείον n (-n) ως εξής:
echo -n "γεια κόσμο" && echo "αντίο κόσμο"

Το αποτέλεσμα από την παραπάνω εντολή είναι το εξής:
γεια σου κόσμο αντίο κόσμο
Χρήση ειδικών χαρακτήρων
Ένα άλλο πράγμα που πρέπει να σκεφτείτε όταν χρησιμοποιείτε τη δήλωση echo είναι πώς χειρίζεται τους ειδικούς χαρακτήρες.

Για παράδειγμα, δοκιμάστε τα ακόλουθα σε ένα παράθυρο τερματικού:
ηχώ "γεια κόσμο\r\nαντίο κόσμο"
Σε έναν ιδανικό κόσμο, τα \r και \n θα λειτουργούσαν ως ειδικοί χαρακτήρες για να προσθέσουν μια νέα γραμμή, αλλά δεν το κάνουν. Το αποτέλεσμα είναι το εξής:
γεια σου κόσμο\r\nαντίο κόσμο
Μπορείτε να ενεργοποιήσετε ειδικούς χαρακτήρες χρησιμοποιώντας την εντολή echo συμπεριλαμβάνοντας τον διακόπτη -e ως εξής:
echo -e "γεια κόσμο\r\nαντίο κόσμο"
Αυτή τη φορά το αποτέλεσμα θα είναι το εξής:
Γειά σου Κόσμε
αντίο κόσμε
Θα μπορούσατε, φυσικά, να είστε στην κατάσταση κατά την οποία προσπαθείτε να εξάγετε μια συμβολοσειρά που θα μπορούσε να αντιμετωπιστεί ως ειδικός χαρακτήρας και δεν το θέλετε. Σε αυτό το σενάριο χρησιμοποιήστε ένα κεφαλαίο e ως εξής:
echo -E "γεια κόσμο\r\nαντίο κόσμο"
Ποιοι ειδικοί χαρακτήρες χειρίζονται χρησιμοποιώντας το διακόπτη -e;
- \\ ανάστροφη κάθετο
- \ μια ειδοποίηση
- \b backspace
- \c δεν παράγουν περαιτέρω έξοδο
- \e απόδραση
- \f φόρμα ροής
- \n νέα γραμμή
- άμαξα επιστροφή
- \t οριζόντια καρτέλα
- \v κάθετη καρτέλα
- \ 0NNN οκταδική τιμή με 1 έως 3 ψηφία
- \xHH byte με δεκαεξαδική τιμή

Ας δοκιμάσουμε μερικά από αυτά. Εκτελέστε το παρακάτω εντολή σε ένα τερματικό:
echo -e "hel\blo κόσμος"
Η παραπάνω εντολή θα παράγει τα εξής:
γεια σου κόσμε
Προφανώς δεν είναι πραγματικά αυτό που θα θέλατε να εμφανιστεί στην οθόνη, αλλά καταλαβαίνετε ότι η ανάστροφη κάθετο b αφαιρεί το προηγούμενο γράμμα.
Τώρα δοκιμάστε τα εξής σε ένα παράθυρο τερματικού:
echo -e "γεια\c κόσμο"
Αυτή η εντολή εξάγει τα πάντα μέχρι την ανάστροφη κάθετο και γ. Όλα τα άλλα παραλείπονται, συμπεριλαμβανομένης της νέας γραμμής.
Χαρακτήρας γραμμής και Επιστροφή καρότσι
Ποια είναι λοιπόν η διαφορά μεταξύ ενός χαρακτήρα νέας γραμμής και μιας επιστροφής μεταφοράς; Ο χαρακτήρας της νέας γραμμής μετακινεί τον κέρσορα προς τα κάτω στην επόμενη γραμμή, ενώ η επιστροφή μεταφοράς μετακινεί τον κέρσορα πίσω στην αριστερή πλευρά.

Για παράδειγμα, εισαγάγετε τα ακόλουθα στο παράθυρο του τερματικού σας:
echo -e "γεια\nκόσμος"
Η έξοδος της παραπάνω εντολής τοποθετεί τις δύο λέξεις σε διαφορετικές γραμμές:
γεια σας
κόσμος
Τώρα δοκιμάστε αυτό σε ένα παράθυρο τερματικού:
echo -e "γεια\rworld"
Η διαφορά μεταξύ μιας νέας γραμμής και της επιστροφής μεταφοράς θα γίνει πολύ εμφανής καθώς τα ακόλουθα θα εμφανιστούν ως έξοδος:
κόσμος
Εμφανίστηκε η λέξη hello, η επιστροφή έφερε τον κέρσορα στην αρχή της γραμμής και εμφανίστηκε η λέξη κόσμος.
Γίνεται λίγο πιο προφανές αν δοκιμάσετε τα εξής:
echo -e "γεια\rhi"
Η έξοδος από τα παραπάνω έχει ως εξής:
γεια σας.
Στην πραγματικότητα, χρησιμοποιώντας πολλά άτομα εξακολουθούν να χρησιμοποιούν τη σημείωση \r\n κατά την έξοδο σε μια νέα γραμμή. Αρκετά συχνά, ωστόσο, μπορείτε να ξεφύγετε με ένα \n.