Beginner's Guide to the Bash Terminal
Πίνακας περιεχομένων:
- Χρησιμοποιώντας την επέκταση εντολών και ιστορικού ιστορικού
- Αποθήκευση της λίστας ιστορικού
- Εκκαθάριση ιστορικού
- Τροποποίηση συμπεριφοράς ιστορικού
- συμπέρασμα
, θα μιλήσουμε για την εντολή
history
, η οποία σας επιτρέπει να δείτε μια λίστα εντολών που έχουν εκτελεστεί προηγουμένως, να κάνετε αναζήτηση στη λίστα και να χειριστείτε το αρχείο ιστορικού.
Χρησιμοποιώντας την επέκταση εντολών και ιστορικού ιστορικού
history
είναι ενσωματωμένο στο κέλυφος και η συμπεριφορά του μπορεί να διαφέρει ελαφρώς από το κέλυφος στο κέλυφος. Θα καλύψουμε την έκδοση του
history
Bash.
Σε αυτήν την απλούστερη μορφή, όταν ενεργοποιείται χωρίς οποιαδήποτε επιλογή ή όρισμα, η εντολή
history
εμφανίζει ολόκληρη την λίστα ιστορικού με αριθμούς γραμμών.
history
… 467 git push 468 tail -f var/logs/error 469 nano +22, 5 functions.sh 470 source project-env/bin/activate 471 history
Η πληκτρολόγηση
!n
εκτελεί την n-th εντολή από τη λίστα ιστορικού και
!-n
την εντολή n γραμμές πίσω. Στο παρακάτω παράδειγμα εκτελούμε την εντολή στη γραμμή
467
:
!467
Ένας άλλος τρόπος για να εκτελέσετε μια εντολή είναι να χρησιμοποιήσετε την επέκταση
!word
.
word
αναφέρεται στην πιο πρόσφατη εντολή ξεκινώντας με την λέξη.
Συνήθως, το
history
εμφανίζει πολλές γραμμές παραγωγής που δεν ταιριάζουν στην οθόνη. Για να προβάλετε τη σελίδα εξόδου μία φορά τη φορά, μπορείτε να την διοχετεύσετε σε ένα πρόγραμμα pager σαν
more
ή
less
εντολή:
history | less
Για να εμφανίσετε τις τελευταίες γραμμές
n
, περάστε τον αριθμό ως όρισμα στην εντολή. Για παράδειγμα, για να δείτε μόνο τις τελευταίες πέντε γραμμές από τη λίστα ιστορικού που θα πληκτρολογήσετε:
history -5
Χρησιμοποιήστε τα
up
και
down
βελάκια για να περιηγηθείτε στις καταχωρήσεις στη λίστα. Όταν εμφανίζεται η εντολή που αναζητήσατε, πατήστε
Enter
για να την εκτελέσετε.
Τύπος
!!
για να εκτελέσετε την προηγούμενη εντολή:
!!
Αυτό είναι ιδιαίτερα χρήσιμο όταν ξεχάσετε να καταλάβετε μια εντολή με το
sudo
και αντί να πληκτρολογήσετε ξανά την εντολή μπορείτε να πληκτρολογήσετε:
sudo !!
!-1
είναι το ίδιο με
!!
και εκτελεί την τελευταία εντολή από τη λίστα ιστορικού, !
!-2
δευτερόλεπτα έως το τελευταίο, και ούτω καθεξής.
^word1^word2^
επέκταση σας επιτρέπει να επαναλάβετε την τελευταία εντολή αντικαθιστώντας "word1" με "word2". Εάν πληκτρολογήσατε
sduo command
αντί
sduo command
sudo command
μπορείτε να επαναλάβετε την εντολή χρησιμοποιώντας τη σωστή λέξη με:
^sduo^sudo^
Χρησιμοποιήστε την εντολή
grep
για να φιλτράρετε την έξοδο. Για παράδειγμα, για να δείτε όλες τις εντολές, συμπεριλαμβανομένου του "nano", θα εκτελέσετε:
history | grep nano
302 sudo nano /etc/resolv.conf 356 nano setup.py 413 sudo nano /etc/hosts 469 nano +22, 5 functions.sh
Τώρα, αν θέλετε να εκτελέσετε εκ νέου την εντολή
nano setup.py
απλά πληκτρολογήστε:
!356
Ένας άλλος τρόπος για να πραγματοποιήσετε αναζήτηση στο ιστορικό εντολών είναι να πιέσετε το πλήκτρο
Ctrl-R
. Η ερώτηση θα αλλάξει ως εξής και μπορείτε να ξεκινήσετε την αναζήτηση μιας εντολής που εκτελέσατε προηγουμένως.
(reverse-i-search)`':
Το κέλυφος θα εμφανίσει μια γραμμή που ταιριάζει. Για να μεταβείτε στην επόμενη αντιστοιχισμένη πρόταση, πιέστε ξανά το
Ctrl-R
.
Ελέγξτε το εγχειρίδιο του Bash για περισσότερες πληροφορίες σχετικά με την Επέκταση ιστορικού, τους τροποποιητές και τους προσδιοριστές.
Αποθήκευση της λίστας ιστορικού
Από προεπιλογή, κατά την εκκίνηση μιας νέας περιόδου σύνδεσης, ο Bash διαβάζει τη λίστα ιστορικού από το αρχείο
.bash_history
. Η λίστα των εντολών που εκτελούνται στην τρέχουσα περίοδο λειτουργίας διατηρείται στη μνήμη και αποθηκεύεται στο αρχείο όταν κλείνει η περίοδος σύνδεσης.
Η επιλογή
-a
σας επιτρέπει να αποθηκεύσετε την τρέχουσα λίστα ιστορικού συνεδριών στο αρχείο
.bash_history
:
history -a
Η επιλογή
-w
γράφει ολόκληρη τη λίστα ιστορικού στο αρχείο ιστορικού.
Εκκαθάριση ιστορικού
Η εντολή
history
σάς επιτρέπει να καταργήσετε την πλήρη λίστα ιστορικού ή να αφαιρέσετε ορισμένα τμήματα.
Για να καταργήσετε τη λίστα ιστορικού, χρησιμοποιήστε την επιλογή
-c
:
history -c
Για να διαγράψετε μια συγκεκριμένη γραμμή ή γραμμές μεταξύ θέσης έναρξης και τερματισμού από τη λίστα ιστορικού, χρησιμοποιήστε την επιλογή
-d
.
Για παράδειγμα, για να καταργήσετε τις γραμμές μεταξύ 365 και 375 (συμπεριλαμβανομένων αυτών των γραμμών), πληκτρολογήστε:
history -d 365 375
Όταν χρησιμοποιείται ένας αρνητικός ακέραιος αριθμός, οι γραμμές απαριθμούνται από το τέλος της λίστας ιστορικού.
Οι εντολές παραπάνω διαγράφουν τη λίστα ιστορικού, η οποία διατηρείται στη μνήμη, αλλά δεν καταργεί καταχωρήσεις από το αρχείο
.bash_history
στο δίσκο. Για να καθαρίσετε το αρχείο, πρέπει να γράψετε τη λίστα ιστορικού στο αρχείο:
Τροποποίηση συμπεριφοράς ιστορικού
Η συμπεριφορά του ιστορικού Bash μπορεί να οριστεί χρησιμοποιώντας αρκετές διαφορετικές μεταβλητές περιβάλλοντος. Κατά την τροποποίηση της συμπεριφοράς ιστορικού, ορίστε τις μεταβλητές στο
~/.bashrc
ή σε οποιοδήποτε άλλο αρχείο ρυθμίσεων που φορτώνεται όταν συνδεθεί ο χρήστης.
Από προεπιλογή, ο Bash διατηρεί 500 γραμμές στη λίστα ιστορικού εντολών. Η μεταβλητή
HISTSIZE
σας επιτρέπει να αλλάξετε αυτήν την τιμή. Για να το ορίσετε σε 10000, προσθέστε την ακόλουθη γραμμή στο αρχείο
.bashrc
:
HISTSIZE=10000
Η μεταβλητή
HISTCONTROL
δέχεται μια λίστα με τιμές που χωρίζονται από κόλον και ορίζει τον τρόπο με τον οποίο αποθηκεύονται οι εντολές στη λίστα ιστορικού:
-
ignorespace- Οι εντολές που ξεκινούν με το διάστημα δεν αποθηκεύονται στη λίστα ιστορικού.ignoredups- οι διπλές εντολές δεν αποθηκεύονται.ignoreboth- είναι μια στενογραφία, συμπεριλαμβανομένων και τωνignorespaceκαιignoredups.
HISTCONTROL=ignoreboth
Όταν έχει
HISTTIMEFORMAT
μεταβλητή
HISTTIMEFORMAT
, ο Bash προωθεί ένα χρονικό σήμα εκτέλεσης για την εντολή σε κάθε γραμμή.
Για παράδειγμα, εάν ορίσετε:
HISTTIMEFORMAT="%F %T: "
Το ιστορικό θα εμφανίζεται με την ακόλουθη μορφή:
413 2019-10-27 21:13:07: sudo nano /etc/hosts
συμπέρασμα
Η εντολή
history
εμφανίζει μια λίστα εντολών που εκτελέστηκαν προηγουμένως. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε το ιστορικό για να δείτε μια μακρά εντολή που έχετε χρησιμοποιήσει πριν από ότι δεν μπορείτε να θυμηθείτε.
Ο πλήρης οδηγός για το ιστορικό του ιστορικού αρχείου
Αναρωτιέστε πώς να χρησιμοποιήσετε το αρχείο ιστοριών του Facebook; Ελέγξτε αυτόν τον εκπληκτικό οδηγό για να ξαναζήσετε αυτές τις μνήμες ή να διαγράψετε μερικές.
Πώς να χρησιμοποιήσετε τα στιγμιότυπα ιστορικού instagram και το ιστορικό αρχείο όπως ένας επαγγελματίας
Θέλετε να βελτιώσετε τις ιστορίες Instagram; Δοκιμάστε τη λειτουργία Highlight and Archive Instagram Stories. Συνέχισε να διαβάζεις!
Πώς να ελέγξετε το χώρο στο δίσκο στο linux χρησιμοποιώντας την εντολή df
Πόσο διάστημα έχω αφήσει στον σκληρό δίσκο μου; Σε συστήματα που βασίζονται στο Linux μπορείτε να χρησιμοποιήσετε την εντολή df για να πάρετε μια λεπτομερή αναφορά σχετικά με τη χρήση του χώρου στο δίσκο του συστήματος.







