Ένα από τα καλύτερα πράγματα για τη γραμμή εντολών Linux είναι η ικανότητά σας να συνθέσετε σενάρια που θα σας διευκολύνουν. Στο πιο βασικό επίπεδο, ένα σενάριο κελύφους είναι μια λίστα εντολών που εκτελούνται το ένα μετά το άλλο, σαν να τις πληκτρολογήσατε μόνοι σας στη γραμμή εντολών. Ενώ ο προγραμματισμός του κελύφους (για παράδειγμα, ο κέλυφος Bash) μπορεί να είναι εξίσου πολύπλοκος με τον προγραμματισμό σε άλλες γλώσσες, είναι ευκολότερο να παραλάβετε μερικά βασικά κόλπα που μπορείτε να χρησιμοποιήσετε για να κάνετε τον εαυτό σας πιο αποτελεσματικό.

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

Τα βασικά των βασικών

Θα έχετε ήδη όλα όσα χρειάζεστε για να επωφεληθείτε από αυτά τα κόλπα σε οποιαδήποτε σύγχρονη διανομή Linux: έναν επεξεργαστή κειμένου και ένα κέλυφος (θα χρησιμοποιήσουμε εδώ το κέλυφος Bash). Ανοίξτε τον επεξεργαστή κειμένου και είστε έτοιμοι να απομακρυνθείτε. Θα αποθηκεύετε τα σενάρια ως αρχεία απλού κειμένου ... μερικοί άνθρωποι προτιμούν να χρησιμοποιούν μια επέκταση αρχείου ".sh" για να βοηθήσουν στην αναγνώριση των σεναρίων.

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

 #! / bin / bash 

Όταν εκτελείτε μια δέσμη ενεργειών στη γραμμή εντολών, αυτή η γραμμή αναφέρει το τρέχον κέλυφος που το άλλο κέλυφος θα χρησιμοποιήσει για να το εκτελέσει, αν είναι διαφορετικά. Το άλλο πράγμα που θα πρέπει να θυμάστε είναι να κάνετε το σενάριό σας εκτελέσιμο, το οποίο θα κάνουμε σε μια στιγμή. Αλλά για τώρα, ας δημιουργήσουμε ένα νέο, χρήσιμο σενάριο.

Ένα σενάριο για να κάνεις πράγματα λίγο διαφορετικά

Ο Οδηγός για αρχάριους παραπάνω κάνει εξαιρετική δουλειά εξηγώντας τις μεταβλητές και σας δείχνει πώς να παίρνετε επιχειρήματα (οποιεσδήποτε λέξεις / φράσεις που πληκτρολογείτε μετά το όνομα της εντολής) και να τις χρησιμοποιήσετε. Αλλά μπορείτε επίσης να χρησιμοποιήσετε τα λεγόμενα "μεταβλητές περιβάλλοντος" για να αλλάξετε τα πράγματα σχετικά με την εκτέλεση των προγραμμάτων σας. Για παράδειγμα, είμαι ιαπωνικός ομιλητής, και ενώ τα προγράμματα Linux μπορούν να χειριστούν την είσοδο των Ιαπωνικών, μερικές φορές παίρνω νοσταλγική για το ιαπωνικό UI. Υπάρχει μια μεταβλητή περιβάλλοντος για το "Locale", που καθορίζει σε ποια προγράμματα γλώσσας εμφανίζονται. Για παράδειγμα, εάν θέλω να επιστρέψω στις ημέρες περιήγησης στο Web μου στην Ιαπωνία, θα χρησιμοποιούσα τα εξής:

 LANG = "ja_JP" firefox 

Αλλά συχνά ξεχνάμε αν αυτή η μεταβλητή περιβάλλοντος θα πρέπει να είναι "LANG", "LC_TYPE" ή μία από τις άλλες 10 τοπικές μεταβλητές. Θα προτιμούσα απλώς να "Ιαπωνοποιήσω". Έτσι, δημιούργησα ένα σενάριο Bash που ονομάζεται "jpit" ως εξής:

 #! / bin / bash LANG = "ja_JP" $ 1 

Αυτό θα δείξει τα μεταφρασμένα ιαπωνικά μενού και τη διεπαφή (μπορείτε να δείτε το αγγλικό UI κάτω αριστερά και το αποτέλεσμα όταν ξεκινάει από το "jpit" στα δεξιά).

Στη συνέχεια, απλά έκανα το εκτελέσιμο σενάριο με τα εξής:

 chmod + x / home / aaron / bin / jpit 

Το έβαλα αυτό στον κατάλογο μου ~ / bin επειδή αυτό είναι στο PATH μου και μπορώ τώρα να το εκτελέσω από οποιοδήποτε τερματικό ή το KRunner και να εισάγω οποιοδήποτε όνομα εφαρμογής που δέχεται τη μεταβλητή "LANG". Μπορείτε να χρησιμοποιήσετε μια δέσμη ενεργειών όπως αυτή για να εκτελέσετε ένα πρόγραμμα με διαφορετικό σύνολο επιλογών, είτε πρόκειται για μεταβλητές περιβάλλοντος, σημαίες γραμμής εντολών ή αρχεία εισόδου / εξόδου.

Ένα σενάριο για να το κάνεις αυτό, τότε αυτό

Κάποιες φορές βρίσκω τον εαυτό μου να εκτελέσει μια σειρά από τις ίδιες εντολές, με την ίδια σειρά, σε μια σειρά. Τα παρακάτω έρχονται άμεσα στο μυαλό:

 sudo apt-get ενημέρωση sudo apt-get αναβάθμιση 

Ευτυχώς, υπάρχει ένας τρόπος για να τα εκδώσετε ως μία εντολή, στη συνέχεια "να περπατήσετε" μέχρι να ολοκληρώσουν όλα:

 sudo apt-get ενημέρωση && sudo apt-get αναβάθμιση 

Η && σε αυτήν την εντολή υποδηλώνει ότι η δεύτερη εντολή πρέπει να εκτελείται μόνο μετά την πρώτη και μόνο εάν η πρώτη ολοκληρώνεται χωρίς σφάλματα. Οι εντολές apt-get παραπάνω θα σας ρωτήσουν πιθανώς εάν θέλετε να εγκαταστήσετε κάποιες εξαρτήσεις, έτσι πώς είναι αυτό χρήσιμο;

Ας επιστρέψουμε στον παλιό μας φίλο, τον Πάντοκ . Έχουμε δει σε προηγούμενα άρθρα ότι η Pandoc έχει επιλογές για να μετατρέψει το Markdown σε άλλες, διαφορετικές μορφές. Αλλά τι γίνεται αν θέλετε να το μετατρέψετε σε HTML, ODT, DOCX και ένα e-book ταυτόχρονα; Απλή: δημιουργήστε ένα σενάριο κελύφους με τα εξής:

 #! / bin / bash pandoc -r markdown -w html -o $ 1.html $ 1 && pandoc -r markdown -w docx -o $ 1.docx $ 1 && pandoc -r markdown -w odt -o $ 1.odt $ 1 && pandoc - r markdown -w epub -o $ 1.epub $ 1 

Αυτό θα πάρει οποιοδήποτε έγγραφο Markdown το δίνετε σαν επιχείρημα και θα δημιουργήσετε κάθε μία από τις επιθυμητές μορφές, εκτελώντας την εντολή Pandoc μία μορφή κάθε φορά. Μια εντολή, τέσσερα τελικά προϊόντα. Τώρα αυτή είναι η αποτελεσματικότητα!

Μπορείτε ακόμη να συνδυάσετε τα παραπάνω με τις επιλογές για να δημιουργήσετε όλα τα είδη χρήσιμων σεναρίων. Επειδή παρόλο που όλοι αγαπάμε τη γραμμή εντολών, δεν υπάρχει κανένας λόγος να ξοδεύουμε περισσότερο χρόνο από αυτό που πρέπει να ...