Πώς να χρησιμοποιήσετε την εντολή ιστορικού στο Linux
Fatmawati Achmad Zaenuri/Shutterstock
Το κέλυφος του Linux αποθηκεύει ένα ιστορικό των εντολών που εκτελείτε και μπορείτε να το αναζητήσετε για να επαναλάβετε εντολές που έχετε εκτελέσει στο παρελθόν. Μόλις κατανοήσετε την εντολή ιστορικού Linux και τον τρόπο χρήσης της, μπορεί να αυξήσει σημαντικά την παραγωγικότητά σας.
Χειρισμός της Ιστορίας
Οπως και Ο Τζορτζ Σανταγιάνα λέγεται περίφημα , Όσοι δεν θυμούνται το παρελθόν είναι καταδικασμένοι να το επαναλάβουν. Δυστυχώς, στο Linux, αν δεν μπορείτε να θυμηθείτε το παρελθόν, δεν μπορείτε να το επαναλάβετε, ακόμα κι αν το θέλετε.
ΣΧΕΤΙΖΕΤΑΙ ΜΕ 10 Βασικές εντολές Linux για αρχάριους
Τότε είναι που το Linux |_+_| η εντολή είναι χρήσιμη. Σας επιτρέπει να αναθεωρήσετε και να επαναλάβετε τις προηγούμενες εντολές σας. Αυτό δεν προορίζεται απλώς να ενθαρρύνει την τεμπελιά ή να εξοικονομήσει χρόνο - υπάρχει επίσης ένας παράγοντας αποτελεσματικότητας (και ακρίβειας). Όσο μεγαλύτερη και πιο περίπλοκη είναι μια εντολή, τόσο πιο δύσκολο είναι να θυμάστε και να πληκτρολογήσετε χωρίς να κάνετε λάθος. Υπάρχουν δύο τύποι σφαλμάτων: ένα που εμποδίζει την εντολή να λειτουργήσει και ένα που επιτρέπει στην εντολή να λειτουργήσει, αλλά την κάνει να κάνει κάτι απροσδόκητο.
Το |_+_| εντολή εξαλείφει αυτά τα ζητήματα. Όπως οι περισσότερες εντολές Linux, έχει περισσότερα από όσα φαντάζεστε . Ωστόσο, εάν μάθετε πώς να χρησιμοποιείτε το |_+_| εντολή, μπορεί να βελτιώσει τη χρήση της γραμμής εντολών Linux, κάθε μέρα. Είναι μια καλή επένδυση του χρόνου σας. Υπάρχουν πολύ καλύτεροι τρόποι να χρησιμοποιήσετε το |_+_| εντολή παρά μόνο πατώντας επανειλημμένα το επάνω βέλος .
Η εντολή της ιστορίας
Στην απλούστερη μορφή του, μπορείτε να χρησιμοποιήσετε το |_+_| εντολή πληκτρολογώντας απλώς το όνομά του:
history
Διαφήμιση
Στη συνέχεια, η λίστα των εντολών που χρησιμοποιήθηκαν προηγουμένως γράφεται στο παράθυρο του τερματικού.
Οι εντολές είναι αριθμημένες, με τις πιο πρόσφατα χρησιμοποιημένες (αυτές με τους μεγαλύτερους αριθμούς) στο τέλος της λίστας.
Για να δείτε έναν συγκεκριμένο αριθμό εντολών, μπορείτε να περάσετε έναν αριθμό στο |_+_| στη γραμμή εντολών. Για παράδειγμα, για να δείτε τις τελευταίες 10 εντολές που χρησιμοποιήσατε, πληκτρολογήστε τα εξής:
history
Μπορείτε να επιτύχετε το ίδιο αποτέλεσμα αν σωλήνας |_+_| μέσα από |_+_| εντολή . Για να το κάνετε αυτό, πληκτρολογήστε τα εξής:
history
ΣΧΕΤΙΖΕΤΑΙ ΜΕ: Πώς να χρησιμοποιήσετε το Pipes στο Linux
Επαναλαμβανόμενες εντολές
Εάν θέλετε να χρησιμοποιήσετε ξανά μια εντολή από τη λίστα ιστορικού, πληκτρολογήστε ένα θαυμαστικό (!) και τον αριθμό της εντολής χωρίς κενά ενδιάμεσα.
Για παράδειγμα, για να επαναλάβετε την εντολή με αριθμό 37, θα πληκτρολογήσετε αυτήν την εντολή:
history
Διαφήμιση
Για να επαναλάβετε την τελευταία εντολή, πληκτρολογήστε δύο θαυμαστικά, ξανά, χωρίς κενά:
history
Αυτό μπορεί να είναι χρήσιμο όταν δίνετε μια εντολή και ξεχνάτε να χρησιμοποιήσετε το |_+_| . Πληκτρολογήστε |_+_|, ένα κενό, τα διπλά θαυμαστικά και μετά πατήστε Enter.
Για το ακόλουθο παράδειγμα, πληκτρολογήσαμε μια εντολή που απαιτεί |_+_|. Αντί να πληκτρολογήσουμε ξανά ολόκληρη τη γραμμή, μπορούμε να αποθηκεύσουμε ένα σωρό πατήματα πλήκτρων και απλώς να πληκτρολογήσουμε |_+_|, όπως φαίνεται παρακάτω:
history
history
Έτσι, μπορείτε να πληκτρολογήσετε τον αντίστοιχο αριθμό από τη λίστα για να επαναλάβετε μια εντολή ή να χρησιμοποιήσετε τα διπλά θαυμαστικά για να επαναλάβετε την τελευταία εντολή που χρησιμοποιήσατε. Ωστόσο, τι γίνεται αν θέλετε να επαναλάβετε την πέμπτη ή την όγδοη εντολή;
Μπορείτε να χρησιμοποιήσετε ένα θαυμαστικό, μια παύλα (-) και τον αριθμό οποιασδήποτε προηγούμενης εντολής (και πάλι, χωρίς κενά) για να την επαναλάβετε.
Για να επαναλάβετε την 13η προηγούμενη εντολή, θα πληκτρολογήσετε τα εξής:
tail
Αναζήτηση για εντολές με συμβολοσειρά
Για να επαναλάβετε την τελευταία εντολή που ξεκινά με μια συγκεκριμένη συμβολοσειρά, μπορείτε να πληκτρολογήσετε ένα θαυμαστικό και, στη συνέχεια, τη συμβολοσειρά χωρίς κενά και, στη συνέχεια, να πατήσετε Enter.
ΔιαφήμισηΓια παράδειγμα, για να επαναλάβετε την τελευταία εντολή που ξεκίνησε με |_+_|, θα πρέπει να πληκτρολογήσετε αυτήν την εντολή:
sudo
Ωστόσο, υπάρχει ένα στοιχείο κινδύνου σε αυτό. Αν η τελευταία εντολή που ξεκίνησε με |_+_| δεν είναι αυτό που νομίζετε ότι είναι, θα εκκινήσετε τη λάθος εντολή.
Ωστόσο, για να παράσχετε ένα δίχτυ ασφαλείας, μπορείτε να χρησιμοποιήσετε το |_+_| τροποποιητής (εκτύπωση), όπως φαίνεται παρακάτω:
sudo
Αυτό δίνει εντολή |_+_| για να εκτυπώσετε την εντολή στο παράθυρο του τερματικού, αντί να την εκτελέσετε. Αυτό σας επιτρέπει να δείτε την εντολή πριν τη χρησιμοποιήσετε. Εάν είναι η εντολή που θέλετε, πατήστε το επάνω βέλος και, στη συνέχεια, πατήστε Enter για να τη χρησιμοποιήσετε.
Εάν θέλετε να βρείτε μια εντολή που περιέχει μια συγκεκριμένη συμβολοσειρά, μπορείτε να χρησιμοποιήσετε ένα θαυμαστικό και ένα ερωτηματικό.
ΔιαφήμισηΓια παράδειγμα, για να βρείτε και να εκτελέσετε την πρώτη αντίστοιχη εντολή που περιέχει τη λέξη ψευδώνυμα, θα πρέπει να πληκτρολογήσετε αυτήν την εντολή:
sudo
Αυτό θα βρει οποιαδήποτε εντολή περιέχει τα ψευδώνυμα συμβολοσειράς, ανεξάρτητα από το πού εμφανίζεται στη συμβολοσειρά.
Διαδραστική αναζήτηση
Μια διαδραστική αναζήτηση σάς επιτρέπει να μεταβείτε σε μια λίστα με αντίστοιχες εντολές και να επαναλάβετε αυτήν που θέλετε.
Απλώς πατήστε Ctrl+r για να ξεκινήσει η αναζήτηση.
Καθώς πληκτρολογείτε την ένδειξη αναζήτησης, θα εμφανιστεί η πρώτη εντολή που ταιριάζει. Τα γράμματα που πληκτρολογείτε εμφανίζονται μεταξύ του backtick (`) και της απόστροφης (`). Οι αντίστοιχες εντολές ενημερώνονται καθώς πληκτρολογείτε κάθε γράμμα.
Κάθε φορά που πατάτε Ctrl+r, αναζητάτε προς τα πίσω την επόμενη αντίστοιχη εντολή, η οποία εμφανίζεται στο παράθυρο του τερματικού.
Όταν πατήσετε Enter, η εντολή που εμφανίζεται θα εκτελεστεί.
Για να επεξεργαστείτε μια εντολή πριν την εκτελέσετε, πατήστε είτε το Αριστερό είτε το Δεξί πλήκτρο βέλους.
Διαφήμιση
Η εντολή εμφανίζεται στη γραμμή εντολών και μπορείτε να την επεξεργαστείτε.
Μπορείτε να χρησιμοποιήσετε άλλα εργαλεία Linux για να κάνετε αναζήτηση στη λίστα ιστορικού. Για παράδειγμα, για τη διοχέτευση της εξόδου από το |_+_| σε |_+_| και αναζητήστε εντολές που περιέχουν τη συμβολοσειρά ψευδώνυμα μπορείτε να χρησιμοποιήσετε αυτήν την εντολή:
sudo !!
Τροποποίηση της τελευταίας εντολής
Εάν πρέπει να διορθώσετε ένα τυπογραφικό λάθος και, στη συνέχεια, να επαναλάβετε την εντολή, μπορείτε να χρησιμοποιήσετε το κουτί (^) για να το τροποποιήσετε. Αυτό είναι ένα εξαιρετικό κόλπο για να έχετε στο μανίκι σας κάθε φορά που γράφετε λάθος μια εντολή ή θέλετε να την εκτελέσετε ξανά με διαφορετική επιλογή ή παράμετρο γραμμής εντολών.
Για να το χρησιμοποιήσετε, πληκτρολογήστε (χωρίς κενά) ένα κουτί, το κείμενο που θέλετε να αντικαταστήσετε, ένα άλλο καρέ, το κείμενο με το οποίο θέλετε να το αντικαταστήσετε, ένα άλλο καρέ και, στη συνέχεια, πατήστε Enter.
Για παράδειγμα, ας υποθέσουμε ότι πληκτρολογείτε την ακόλουθη εντολή, πληκτρολογώντας κατά λάθος shhd αντί για sshd:
sudo
Θα μπορούσατε να το διορθώσετε εύκολα πληκτρολογώντας τα εξής:
sudo
Η εντολή εκτελείται με το shhd διορθωμένο σε sshd.
Διαγραφή εντολών από τη λίστα ιστορικού
Μπορείτε επίσης να διαγράψετε εντολές από τη λίστα ιστορικού με το |_+_| (διαγραφή) επιλογή. Δεν υπάρχει λόγος να διατηρήσετε την ανορθόγραφη εντολή σας στη λίστα ιστορικού.
ΔιαφήμισηΜπορείτε να χρησιμοποιήσετε |_+_| για να το βρείτε, περάστε τον αριθμό του στο |_+_| με το |_+_| επιλογή για να το διαγράψετε και, στη συνέχεια, να αναζητήσετε ξανά για να βεβαιωθείτε ότι έχει φύγει:
:p
history
history
Μπορείτε επίσης να περάσετε μια σειρά εντολών στο |_+_| επιλογή. Για να διαγράψετε όλες τις καταχωρήσεις λίστας από το 22 έως το 32 (συμπεριλαμβανομένων), πληκτρολογήστε αυτήν την εντολή:
grep
Για να διαγράψετε μόνο τις τελευταίες πέντε εντολές, μπορείτε να πληκτρολογήσετε έναν αρνητικό αριθμό, όπως:
-d
Μη αυτόματη ενημέρωση του αρχείου ιστορικού
Όταν συνδέεστε ή ανοίγετε μια περίοδο λειτουργίας τερματικού, η λίστα ιστορικού διαβάζεται από το αρχείο ιστορικού. Στο Bash, το προεπιλεγμένο αρχείο ιστορικού είναι |_+_|.
Οποιεσδήποτε αλλαγές κάνετε στην τρέχουσα περίοδο λειτουργίας παραθύρου τερματικού εγγράφονται στο αρχείο ιστορικού μόνο όταν κλείνετε το παράθυρο τερματικού ή όταν αποσυνδεθείτε.
Ας υποθέσουμε ότι θέλετε να ανοίξετε ένα άλλο παράθυρο τερματικού για πρόσβαση στην πλήρη λίστα ιστορικού, συμπεριλαμβανομένων των εντολών που πληκτρολογήσατε στο πρώτο παράθυρο τερματικού. Το |_+_| Η επιλογή (όλα) σάς επιτρέπει να το κάνετε αυτό στο πρώτο παράθυρο τερματικού πριν ανοίξετε το δεύτερο.
Για να το χρησιμοποιήσετε, πληκτρολογήστε τα εξής:
grep
Οι εντολές εγγράφονται αθόρυβα στο αρχείο ιστορικού.
ΔιαφήμισηΕάν θέλετε να γράψετε όλες τις αλλαγές στη λίστα ιστορικού στο αρχείο ιστορικού (αν διαγράψατε κάποιες παλιές εντολές, για παράδειγμα), μπορείτε να χρησιμοποιήσετε το |_+_| (εγγραφή) επιλογή, όπως:
history
Εκκαθάριση της λίστας ιστορικού
Για να διαγράψετε όλες τις εντολές από τη λίστα ιστορικού, μπορείτε να χρησιμοποιήσετε το |_+_| (καθαρή) επιλογή, ως εξής:
-d
Εάν θέλετε επιπλέον να επιβάλλετε αυτές τις αλλαγές στο αρχείο ιστορικού, χρησιμοποιήστε το |_+_| επιλογή, όπως έτσι:
-d
Ασφάλεια και το αρχείο ιστορικού
Εάν χρησιμοποιείτε οποιεσδήποτε εφαρμογές που απαιτούν να πληκτρολογήσετε ευαίσθητες πληροφορίες (όπως κωδικούς πρόσβασης) στη γραμμή εντολών, θυμηθείτε ότι θα αποθηκευτούν επίσης στο αρχείο ιστορικού. Εάν δεν θέλετε να αποθηκευτούν ορισμένες πληροφορίες, μπορείτε να χρησιμοποιήσετε την ακόλουθη δομή εντολών για να τις διαγράψετε αμέσως από τη λίστα ιστορικού:
.bash_history
-a
Αυτή η δομή περιλαμβάνει δύο εντολές που χωρίζονται με ένα ερωτηματικό (;). Ας το αναλύσουμε αυτό:
-d
: Ο μέγιστος αριθμός καταχωρήσεων που μπορεί να περιέχει η λίστα ιστορικού.- Όταν συνδέεστε ή ξεκινάτε μια περίοδο λειτουργίας παραθύρου τερματικού, η λίστα ιστορικού συμπληρώνεται από το |_+_| αρχείο.
- Όταν κλείνετε ένα παράθυρο τερματικού, ο μέγιστος αριθμός εντολών ορίζεται στο |_+_| αποθηκεύονται στο |_+_| αρχείο.
- Εάν το |_+_| Η επιλογή φλοιού είναι ενεργοποιημένη, οι εντολές προσαρτώνται στο |_+_|. Εάν |_+_| δεν έχει οριστεί, |_+_| αντικαθίσταται.
- Αφού αποθηκεύσετε τις εντολές από τη λίστα ιστορικού στο |_+_| , το αρχείο ιστορικού περικόπτεται ώστε να περιέχει όχι περισσότερο από |_+_| γραμμές.
- |_+_|Οι γραμμές που ξεκινούν με κενό δεν προστίθενται στη λίστα ιστορικού.
- |_+_|Διπλότυπες εντολές δεν προστίθενται στο αρχείο ιστορικού.
- |_+_|Ενεργοποιεί και τα δύο παραπάνω.
HISTSIZE
: Πλήρης σφραγίδα ημερομηνίας και ώρας (μορφές ημέρας-ημερομηνίας-μήνας-έτος και ώρα:λεπτά:δευτερόλεπτα)- & rsaquo; Πώς να προσαρμόσετε το κέλυφος Bash με το shopt
- & rsaquo; Τι είναι το Bash Shell και γιατί είναι τόσο σημαντικό για το Linux;
- › Τι είναι το MIL-SPEC Drop Protection;
- › Ο φάκελος του υπολογιστή είναι 40: Πώς το Xerox Star δημιούργησε την επιφάνεια εργασίας
- › 5 ιστότοποι που κάθε χρήστης Linux πρέπει να προσθέτει σελιδοδείκτη
- › Πώς να βρείτε το Spotify τυλιγμένο 2021
- › Λειτουργίες έναντι τύπων στο Microsoft Excel: Ποια είναι η διαφορά;
- & rsaquo; Cyber Monday 2021: Καλύτερες προσφορές τεχνολογίας
Μπορείτε να χρησιμοποιήσετε το |_+_| εντολή για να βεβαιωθείτε ότι η εντολή που περιέχει τον κωδικό πρόσβασης αφαιρέθηκε από τη λίστα ιστορικού.
ΔιαφήμισηΩστόσο, υπάρχει ένας ακόμη πιο απλός τρόπος για να το κάνετε αυτό. Επειδή το Bash αγνοεί γραμμές που ξεκινούν με κενό από προεπιλογή, απλώς συμπεριλάβετε ένα διάστημα στην αρχή της γραμμής, ως εξής:
-w
-c
Η εντολή με τον κωδικό πρόσβασης δεν προστίθεται στη λίστα ιστορικού. Ο λόγος που λειτουργεί αυτό το κόλπο περιέχεται στο |_+_| αρχείο.
Το αρχείο .bashrc
Το |_+_| το αρχείο εκτελείται κάθε φορά που συνδέεστε ή ανοίγετε ένα παράθυρο τερματικού. Περιέχει επίσης ορισμένες τιμές που ελέγχουν τη συμπεριφορά του |_+_| εντολή. Ας επεξεργαστείτε αυτό το αρχείο με |_+_| .
Πληκτρολογήστε τα εξής:
-w
Κοντά στην κορυφή του αρχείου, βλέπετε δύο εγγραφές:
history
Αυτές οι δύο τιμές αλληλεπιδρούν με τους ακόλουθους τρόπους:
Επίσης κοντά στην κορυφή του αρχείου, βλέπετε μια καταχώρηση για το |_+_| αξία.
Μπορείτε να ορίσετε αυτήν την τιμή για να κάνει οποιοδήποτε από τα ακόλουθα:
Μπορείτε επίσης να παραθέσετε συγκεκριμένες εντολές που δεν θέλετε να προστεθούν στη λίστα ιστορικού σας. Διαχωρίστε τα με άνω και κάτω τελεία (:) και βάλτε τα σε εισαγωγικά (…).
Θα ακολουθήσετε αυτήν τη δομή για να προσθέσετε μια γραμμή στο |_+_| σας αρχείο και αντικαταστήστε τις εντολές που θέλετε να αγνοηθούν:
$()
Χρήση χρονικών σφραγίδων
Εάν θέλετε να προσθέσετε χρονικές σημάνσεις στη λίστα ιστορικού, μπορείτε να χρησιμοποιήσετε το |_+_| σύνθεση. Για να το κάνετε αυτό, απλώς προσθέστε μια γραμμή όπως η παρακάτω στο |_+_| αρχείο:
history 1
Σημειώστε ότι υπάρχει ένα κενό πριν από τα εισαγωγικά κλεισίματος. Αυτό αποτρέπει τη χρονική σήμανση από το να προσαρμοστεί στις εντολές στη λίστα εντολών.
Τώρα, όταν εκτελείτε την εντολή ιστορικού, βλέπετε σήμανση ημερομηνίας και ώρας. Λάβετε υπόψη ότι τυχόν εντολές που βρίσκονταν στη λίστα ιστορικού πριν προσθέσετε τις χρονικές σημάνσεις θα φέρουν χρονική σήμανση με την ημερομηνία και την ώρα της πρώτης εντολής που λαμβάνει μια χρονική σήμανση. Σε αυτό το παράδειγμα που φαίνεται παρακάτω, αυτή ήταν η εντολή 118.
Αυτή είναι μια πολύ μακροχρόνια χρονική σήμανση. Ωστόσο, μπορείτε να χρησιμοποιήσετε διακριτικά εκτός από |_+_| να το τελειοποιήσεις. Τα άλλα διακριτικά που μπορείτε να χρησιμοποιήσετε είναι:
history 5
:.bashrc
:.bashrc
:history
:gedit
: HISTSIZE
:HISTFILESIZE
:.bash_history
:Ας πειραματιστούμε και ας χρησιμοποιήσουμε μερικά διαφορετικά διακριτικά:
.bash_history
Η έξοδος χρησιμοποιεί την ημέρα, τον μήνα και την ώρα.
Διαφήμιση
Ωστόσο, εάν αφαιρέσουμε την ημέρα και τον μήνα, θα εμφανιστεί απλώς η ώρα.
Τυχόν αλλαγές που κάνετε στο |_+_| εφαρμόζονται σε ολόκληρη τη λίστα ιστορικού. Αυτό είναι δυνατό επειδή ο χρόνος για κάθε εντολή αποθηκεύεται ως το αριθμό δευτερολέπτων από την εποχή του Unix . Η οδηγία |_+_|καθορίζει απλώς τη μορφή που χρησιμοποιείται για την απόδοση αυτού του αριθμού δευτερολέπτων σε στυλ αναγνώσιμο από τον άνθρωπο, όπως:
histappend
Η παραγωγή μας είναι πλέον πιο διαχειρίσιμη.
Μπορείτε επίσης να χρησιμοποιήσετε το |_+_| εντολή για έλεγχο. Μερικές φορές, αναθεώρηση εντολές που έχετε χρησιμοποιήσει στο παρελθόν μπορεί να σας βοηθήσει να προσδιορίσετε τι μπορεί να έχει προκαλέσει ένα πρόβλημα.
Όπως μπορείτε στη ζωή, στο Linux, μπορείτε να χρησιμοποιήσετε το |_+_| εντολή να ξαναζήσετε τις καλές στιγμές και να μάθετε από τις κακές.
ΣΧΕΤΙΖΕΤΑΙ ΜΕ: 37 Σημαντικές εντολές Linux που πρέπει να γνωρίζετε
ΣΧΕΤΙΖΕΤΑΙ ΜΕ: Καλύτεροι φορητοί υπολογιστές Linux για προγραμματιστές και λάτρεις
ΔΙΑΒΑΣΤΕ ΤΗ ΣΥΝΕΧΕΙΑΟ Dave McKay χρησιμοποίησε για πρώτη φορά υπολογιστές όταν η διάτρητη χαρτοταινία ήταν στη μόδα και από τότε ασχολείται με τον προγραμματισμό. Μετά από περισσότερα από 30 χρόνια στη βιομηχανία της πληροφορικής, είναι πλέον δημοσιογράφος τεχνολογίας πλήρους απασχόλησης. Κατά τη διάρκεια της καριέρας του, έχει εργαστεί ως ελεύθερος επαγγελματίας προγραμματιστής, διευθυντής διεθνούς ομάδας ανάπτυξης λογισμικού, διευθυντής έργου υπηρεσιών πληροφορικής και, πιο πρόσφατα, ως Υπεύθυνος Προστασίας Δεδομένων. Η γραφή του έχει δημοσιευτεί από τα howtogeek.com, cloudsavvyit.com, itenterpriser.com και opensource.com. Ο Dave είναι ευαγγελιστής Linux και υπέρμαχος ανοιχτού κώδικα.
Διαβάστε το πλήρες βιογραφικό