Η χρήση του Τερματικού για την εκκίνηση εφαρμογών προσφέρει μεγαλύτερη ταχύτητα και έλεγχο σε σύγκριση με τα παραδοσιακά μενού ή συντομεύσεις. Μόλις μάθετε τις σωστές εντολές, μπορείτε να ανοίξετε οποιοδήποτε πρόγραμμα απευθείας χωρίς να χρειάζεται να πλοηγηθείτε μεταξύ παραθύρων ή να κάνετε αναζήτηση στη γραμμή εργασιών. Αυτή η λειτουργία σας προσφέρει μεγαλύτερη ευελιξία και εξοικονομεί πολύ χρόνο, ειδικά εάν βασίζεστε σε πολλές εφαρμογές στην καθημερινή σας εργασία.
Πιθανότατα έχετε εκκινήσει κάποια στιγμή μια εφαρμογή από το παράθυρο του Τερματικού, αλλά έχετε παρατηρήσει ότι το κρατά απασχολημένο μέχρι να το κλείσετε; Αυτό μπορεί να είναι πολύ ενοχλητικό. Ωστόσο, μερικές φορές είναι χρήσιμο να εκκινείτε εφαρμογές με αυτόν τον τρόπο—θα εξηγήσω πώς να το κάνετε αποτελεσματικά.
Κάποιοι χρησιμοποιούν μενού, ενώ άλλοι χρησιμοποιούν προγράμματα εκκίνησης εφαρμογών. Προσωπικά, εκκινώ όλες τις εφαρμογές, όπως τον Firefox, από το παράθυρο του τερματικού. Αυτή η συνήθεια χρονολογείται από τα πρώτα μου χρόνια με το Linux (πριν από περίπου 15 χρόνια), όταν δεν ήξερα πώς να δημιουργώ συντομεύσεις. Με την πάροδο του χρόνου, έχω συνηθίσει να εκκινώ εφαρμογές με αυτόν τον τρόπο και επειδή το παράθυρο του τερματικού είναι πάντα ανοιχτό, έχει νόημα. Επιπλέον, είμαι πολύ τεμπέλης για να ρυθμίσω και να συντηρήσω ένα πρόγραμμα εκκίνησης εφαρμογών. Χρησιμοποιώντας το παράθυρο του τερματικού, μπορώ να κάνω αναζήτηση στις εφαρμογές μου αόριστα όπως ένα πρόγραμμα εκκίνησης εφαρμογών, αλλά με το πρόσθετο πλεονέκτημα της επεξεργασίας εντολών πριν τις εκτελέσω.
Καταρχάς, κατανοήστε το Nohup και τον παράγοντα υποβάθρου.
Όταν ανοίγετε μια εφαρμογή από ένα παράθυρο τερματικού και μετά την κλείνετε, η εφαρμογή συχνά κλείνει επίσης—κάτι που μπορεί να μην θέλετε. Στο Linux, όταν μια εφαρμογή ξεκινά μια άλλη, διακλαδώνει τη διαδικασία, έτσι ώστε η αρχική εφαρμογή να γίνεται η γονική εφαρμογή.
Όταν τερματίζεται η γονική διεργασία, όλες οι υποδιεργασίες της συνήθως κλείνουν. Μπορείτε να το δοκιμάσετε μόνοι σας: Πληκτρολογήστε την ακόλουθη εντολή στο παράθυρο εντολών, περιμένετε να ξεκινήσει η διεργασία και, στη συνέχεια, κλείστε το παράθυρο εντολών.
firefox
Για να διατηρήσουμε τις υποδιεργασίες σε λειτουργία μετά το κλείσιμο του τερματικού, θα χρησιμοποιήσουμε ένα δοκιμασμένο εργαλείο που ονομάζεται nohup.
Νόχουπ
Η εντολή nohup αναγκάζει μια διεργασία να αγνοήσει το σήμα SIGHUP, επιτρέποντάς της να συνεχίσει να εκτελείται ακόμα και μετά την αποσύνδεση του χρήστη ή το τέλος της συνεδρίας τερματικού.
Τώρα που έχουμε έναν τρόπο να διατηρήσουμε την διεργασία σε λειτουργία μετά το κλείσιμο του τερματικού, αξίζει να σημειωθεί ότι το nohup θα γράψει αυτόματα την έξοδο στο αρχείο nohup.out στον τρέχοντα κατάλογο. Εκτός αν θέλετε να διανείμετε αυτά τα αρχεία σε όλο το σύστημα αρχείων, θα πρέπει να αντιμετωπίσετε αυτήν τη συμπεριφορά. Μπορείτε είτε να αγνοήσετε όλη την έξοδο είτε να την ανακατευθύνετε σε ένα συγκεκριμένο αρχείο για καταγραφή.
Για να αγνοήσετε όλη την έξοδο, απλώς ανακατευθύνετε την στο /dev/null, το οποίο λειτουργεί ως μαύρη τρύπα για ανεπιθύμητα δεδομένα:
nohup firefox &>/dev/null
Τώρα, αν κλείσετε το τερματικό, ο Firefox θα συνεχίσει να εκτελείται. Ωστόσο, αυτή η ρύθμιση στέλνει όλα τα αρχεία καταγραφής στο κενό. Εναλλακτικά, μπορείτε να ανακατευθύνετε την έξοδο σε ένα αρχείο καταγραφής:
nohup firefox &>/tmp/firefox.log
Τώρα, εάν υπάρχει κάποιο πρόβλημα με τον Firefox, μπορείτε να διαβάσετε το αρχείο καταγραφής.
παράγοντας υποβάθρου
Όταν εκτελείτε το Nohup με τον Firefox, αυτό αναλαμβάνει τη γραμμή εντολών, πράγμα που σημαίνει ότι δεν μπορείτε να εκτελέσετε άλλες εντολές. Αυτή δεν είναι η ιδανική λύση αν θέλετε να χρησιμοποιήσετε το ίδιο παράθυρο εντολών για άλλα πράγματα. Εδώ μπαίνει στο παιχνίδι ο παράγοντας φόντου.
Ένας τελεστής παρασκηνίου είναι απλώς ένα "και" που προστίθεται στο τέλος μιας εντολής, επιτρέποντάς σας να συνεχίσετε να χρησιμοποιείτε το παράθυρο εντολών ενώ εκτελείται η εφαρμογή. Δοκιμάστε το:
firefox &
Αν κλείσετε τώρα το παράθυρο του τερματικού, θα παρατηρήσετε ότι κλείνει και την εφαρμογή. Αυτό συμβαίνει επειδή, ενώ η εκκίνηση στο παρασκήνιο τοποθετεί την εφαρμογή σας στο παρασκήνιο, εξακολουθεί να υπακούει στο σήμα SIGHUP, επομένως το κλείσιμο του παραθύρου του τερματικού σταματά τη διαδικασία. Αυτός είναι ο λόγος για τον οποίο χρησιμοποιούμε επίσης το Nohup.
Ένα χρήσιμο χαρακτηριστικό ενός εργάτη παρασκηνίου είναι η δυνατότητα να επαναφέρει μια διεργασία στο προσκήνιο. Αφού στείλετε τον Firefox στο παρασκήνιο, πληκτρολογήστε fg για να την επαναφέρετε στο προσκήνιο.
Χρήση του Nohup με έναν εργαζόμενο στο παρασκήνιο
Χρησιμοποιώντας το Nohup με έναν επεξεργαστή παρασκηνίου, η εφαρμογή σας εκτελείται εξ ολοκλήρου στο παρασκήνιο, επιτρέποντάς σας να συνεχίσετε να εργάζεστε στο παράθυρο του τερματικού ή ακόμα και να το κλείσετε, και η διεργασία σας θα συνεχίσει να εκτελείται χωρίς διακοπή.
nohup firefox &>/tmp/firefox.log &
Χρησιμοποιήστε εύκολα απομνημονεύσιμα ψευδώνυμα.
Ένα ψευδώνυμο κελύφους λειτουργεί ως ψευδώνυμο για εντολές. Για παράδειγμα, μπορείτε να αντιστοιχίσετε το γράμμα f για την εκκίνηση του Firefox. Απλώς πληκτρολογήστε f στο τερματικό για να το ανοίξετε. Εάν είστε αρχάριοι σε αυτό, σας συνιστούμε να διαβάσετε την ανάρτησή μας σχετικά με τον τρόπο δημιουργίας ψευδωνύμων κελύφους.
Στον κόσμο της προσαρμογής κελύφους, είναι σύνηθες να χρησιμοποιείτε εύκολα απομνημονεύσιμα ψευδώνυμα—σύντομα, εύκολα απομνημονεύσιμα σύνολα χαρακτήρων που αντιπροσωπεύουν μεγαλύτερες εντολές. Για παράδειγμα, μπορείτε να δημιουργήσετε συντομεύσεις Firefox για να εκκινήσετε το πρόγραμμα περιήγησης χρησιμοποιώντας συγκεκριμένα ορίσματα:
alias ffaa="firefox about:about"
alias ffac="firefox about:config"
alias ffnt="firefox --new-tab"
alias ffp="firefox --profile"
alias ffsm="firefox --safe-mode"
Ταξινομώντας τα ψευδώνυμα αλφαβητικά, είναι πιο εύκολο να δείτε ποια ψευδώνυμα χρησιμοποιούνται ήδη.
Ειδοποίηση
Μπορεί να χρειαστεί να χρησιμοποιήσετε το Nohup και έναν υποστηρικτικό παράγοντα για να εκτελέσετε τον Firefox.
Χρησιμοποιήστε το Μητρώο Fuzzy Interfaces
Το πιο χρήσιμο εργαλείο διεπαφής που θα εγκαταστήσετε ποτέ είναι το εργαλείο ασαφούς ιστορικού. Το Atuin είναι μια εφαρμογή που κάνει ακριβώς αυτό και λειτουργεί οπουδήποτε. Προσωπικά χρησιμοποιώ το zsh-fzf-history-search, το οποίο είναι ένα πρόσθετο του Zsh, αλλά είναι σχεδόν πανομοιότυπα.
Αν αφιερώνετε πολύ χρόνο γράφοντας μια μεγάλη εντολή, είναι λογικό να έχετε έναν γρήγορο τρόπο να την εκτελέσετε ξανά. Συχνά αφιερώνω ένα ή δύο λεπτά δημιουργώντας μια σύνθετη εντολή και στη συνέχεια χρησιμοποιώ το ασαφές αρχείο καταγραφής κελύφους για να την εκτελέσω εκατοντάδες φορές κατά τη διάρκεια μηνών ή και ετών.
Αν ωφελείστε μόνο από ένα πράγμα: χρησιμοποιήστε ένα πρόσθετο ή εφαρμογή fuzzy shell log. Σας προτείνω να χρησιμοποιήσετε το Atuin. Αν ενδιαφέρεστε, έχουμε μια εισαγωγή στο Atuin.
επίπεδο αρχείο εντολών
Η ιδέα πίσω από το ασαφές αρχείο καταγραφής κελύφους είναι απλή: μεταγλωττίζει το αρχείο καταγραφής κελύφους, αφαιρεί ορισμένες περιττές λεπτομέρειες και στέλνει το αποτέλεσμα σε ένα πρόγραμμα που ονομάζεται FZF. Θα κάνουμε κάτι παρόμοιο, εκτός από το ότι θα χρησιμοποιήσουμε το FZF για να επιλέξουμε τις εντολές μας από ένα αρχείο απλού κειμένου, ώστε να μπορούμε να τις εκτελέσουμε.
Το FZF έχει σχεδιαστεί για να σας βοηθά να επιλέγετε γρήγορα στοιχεία από μεγάλες λίστες. Είναι ένα απαραίτητο εργαλείο και μέρος οποιουδήποτε προηγμένου κιτ εργαλείων shell και, αν θέλετε να βελτιώσετε τις δεξιότητές σας στο τερματικό, σας συνιστώ ανεπιφύλακτα να μάθετε πώς να το χρησιμοποιείτε. Το FZF είναι εύχρηστο και περιλαμβάνει πολλές προηγμένες λειτουργίες για πιο έμπειρους χρήστες.
Ακολουθεί ένα απλό παράδειγμα για το πώς να χρησιμοποιήσετε το FZF για αναζήτηση σε πολλές γραμμές κειμένου:
echo "foo\nbar" | fzf












