Πώς να χρησιμοποιήσετε την εντολή man του Linux: Κρυμμένα μυστικά και βασικά στοιχεία

Όλα όσα πρέπει να ξέρετε για το Linux βρίσκονται στις σελίδες man του. Για παράδειγμα, μπορείτε να αναζητήσετε μια εντολή για να ολοκληρώσετε μια εργασία, ακόμα κι αν δεν ξέρετε πώς λέγεται. Αλλά πώς μπορείτε να βρείτε τις σελίδες man; Εδώ είναι μερικά κόλπα.

Ενσωματωμένο εγχειρίδιο Linux

Υπάρχει ένα παλιό (από τη χρυσή εποχή του Unix) αστείο Linux ότι η μόνη εντολή που πρέπει να ξέρετε είναι ο άνθρωπος, το σύστημα σημείο εισόδου στο εγχειρίδιο χρήσης. Υπάρχει μια λίγη αλήθεια σε αυτό, αλλά ακόμη και ο άνθρωπος μπορεί να προκαλέσει σύγχυση στην αρχή. Ή, ακριβέστερα, η εύρεση των πληροφοριών που χρειάζεστε μπορεί να προκαλέσει σύγχυση.

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

Λοιπόν, πώς μπορείτε να βρείτε αυτό που ψάχνετε; Λοιπόν, υπάρχουν τρόποι γύρω από αυτό το δίλημμα με τον άνθρωπο.

Τα νούμερα είναι άλλο ένα θέμα πρωτοετής. Τι είναι και τι σημαίνουν; Θα δείτε πράγματα όπως man(2) ή man(5) να αναφέρονται στην τεκμηρίωση και στο διαδίκτυο. Θα δείτε επίσης αναφορές σε εντολές ακολουθούμενες από αριθμούς, όπως mount(2) και mount(8). Σίγουρα δεν μπορεί να υπάρχουν περισσότερες από μία εντολές mount, σωστά; Όπως θα δούμε, οι αριθμοί είναι σημαντικοί και σχετικά απλοί.

Μιλώντας για το απλό, η αναζήτηση μέσα στον άνθρωπο είναι αρκετά εύκολη αφού ξέρεις πώς να το κάνεις. Στην πραγματικότητα, υπάρχουν μερικοί προσεγμένοι τρόποι με τους οποίους μπορείτε να αναζητήσετε και να πλοηγηθείτε μέσα στον άνθρωπο. Ας το ανάψουμε και ας ρίξουμε μια ματιά!

Πώς να ανοίξετε το Εγχειρίδιο

Για να χρησιμοποιήσετε το man, πληκτρολογήστε man στη γραμμή εντολών, ακολουθούμενο από ένα διάστημα και μια εντολή Linux. Ο man ανοίγει το εγχειρίδιο Linux στη «σελίδα ανθρώπου» που περιγράφει αυτήν την εντολή — αν μπορεί να τη βρει, φυσικά.

Ας πληκτρολογήσουμε τα παρακάτω και ας δούμε τι λέει ο άνθρωπος για τον άνθρωπο:

man man

ο

Ανοίγει η σελίδα man for man.

Η man page για

Όπως μπορείτε να δείτε, αυτή είναι η σελίδα man(1).

Ακολουθήστε αυτές τις συμβουλές για να πλοηγηθείτε στη σελίδα:

Για να μετακινηθείτε στη σελίδα ανθρώπου μία γραμμή κάθε φορά: Χρησιμοποιήστε τον τροχό κύλισης στο ποντίκι σας ή το επάνω και κάτω βέλος και τα πλήκτρα Enter.
Για να μετακινηθείτε στη σελίδα χρήστη μία οθόνη κάθε φορά: Πατήστε το πλήκτρο διαστήματος και τα πλήκτρα PgDn και PgUp.
Για να μετακινηθείτε απευθείας στην κορυφή ή στο κάτω μέρος της σελίδας man: Πατήστε τα πλήκτρα Home και End.

Εάν πατήσετε H, εισέρχεστε στην ενότητα βοήθειας και βλέπετε έναν πίνακα με εναλλακτικά πλήκτρα που μπορείτε να χρησιμοποιήσετε. Αυτά που αναφέρονται παραπάνω πιθανότατα θα αισθάνονται πιο φυσικά στους περισσότερους ανθρώπους.

Για έξοδο από τον άνδρα, απλώς πατήστε το Q.

Η ανατομία ενός άνδρα Σελίδα

Στο επάνω μέρος της σελίδας, βλέπετε τις επικεφαλίδες “Όνομα” και “Σύνοψη”. Υπάρχει μια σύμβαση για τη διάταξη των σελίδων man. Υπάρχουν σελίδες man για εντολές, προγράμματα και λειτουργίες προγραμματισμού (ρουτίνες βιβλιοθήκης). Δεν θα βλέπετε όλες αυτές τις επικεφαλίδες σε κάθε σελίδα χρήστη, επειδή ορισμένες από αυτές ισχύουν μόνο για συγκεκριμένους τύπους εντολών.

  Πώς να εγκαταστήσετε και να χρησιμοποιήσετε το πρόγραμμα-πελάτη αλληλογραφίας Kube στο Linux

Οι παρακάτω είναι μερικές από τις επικεφαλίδες που μπορεί να δείτε:

Όνομα: Το όνομα της εντολής που περιγράφει η σελίδα man.
Σύνοψη: Περίληψη της εντολής και της σύνταξής της.
Διαμόρφωση: Λεπτομέρειες διαμόρφωσης για μια συσκευή.
Περιγραφή: Μια εξήγηση του τι κάνει το πρόγραμμα.
Επιλογές: Μια περιγραφή των επιλογών της γραμμής εντολών που δέχεται η εντολή.
Κατάσταση εξόδου: Πιθανές τιμές κατάστασης εξόδου για την εντολή και τι μπορεί να προκαλέσει τη χρήση τους.
Return Value: Εάν η σελίδα man είναι για μια ρουτίνα βιβλιοθήκης, αυτό περιγράφει την τιμή που μπορεί να στείλει η ρουτίνα της βιβλιοθήκης στη συνάρτηση που κάλεσε αυτήν τη ρουτίνα.
Σφάλματα: Μια λίστα με τις τιμές που ενδέχεται να τοποθετηθούν στο errno σε περίπτωση λάθους.
Περιβάλλον: Μια λίστα με τις μεταβλητές περιβάλλοντος που επηρεάζουν την εντολή ή το πρόγραμμα και με ποιον τρόπο.
Αρχεία: Μια λίστα με τα αρχεία που χρησιμοποιεί η εντολή ή το πρόγραμμα, όπως αρχεία διαμόρφωσης.
Χαρακτηριστικά: Μια σύνοψη των διαφόρων χαρακτηριστικών της εντολής.
Εκδόσεις: Λεπτομέρειες του πυρήνα του Linux ή των εκδόσεων βιβλιοθήκης όπου εμφανίστηκε για πρώτη φορά μια κλήση συστήματος ή λειτουργία βιβλιοθήκης ή άλλαξε σημαντικά από τις προηγούμενες εκδόσεις.
Συμμόρφωση με: Περιγραφή τυχόν προτύπων με τα οποία ενδέχεται να συμμορφώνεται η εντολή, όπως π.χ POSIX.
Σημειώσεις: Διάφορες σημειώσεις.
Σφάλματα: Γνωστά ζητήματα.
Παραδείγματα: Ένα ή περισσότερα παραδείγματα που δείχνουν τη χρήση της εντολής.
Συγγραφείς: Τα άτομα που έγραψαν ή διατηρούν την εντολή.
Δείτε επίσης: Συνιστώμενη ανάγνωση που σχετίζεται με την εντολή ή το θέμα.

Τα τμήματα του ανθρώπου

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

Ενότητες εγχειριδίου που αναφέρονται στο

Οι ενότητες είναι:

Γενικές εντολές: Εντολές που χρησιμοποιείτε στη γραμμή εντολών.
Κλήσεις συστήματος: Λειτουργίες που παρέχει ο πυρήνας που μπορεί να καλέσει ένα πρόγραμμα.
Λειτουργίες βιβλιοθήκης: Λειτουργίες που τα προγράμματα μπορούν να καλούν σε βιβλιοθήκες κώδικα (κυρίως το πρότυπο C).
Ειδικά αρχεία: Συνήθως συσκευές, όπως αυτές που βρίσκονται στο /dev, και τα προγράμματα οδήγησης τους.
Μορφές και συμβάσεις αρχείων: Μορφές για αρχεία, όπως το passwd, ο πίνακας cron και τα αρχεία αρχειοθέτησης tar.
Παιχνίδια: Περιγραφές εντολών, όπως το fortune, που εμφανίζουν εισαγωγικά από μια βάση δεδομένων όταν τα εκτελείτε.
Διάφορα: Περιγραφές πραγμάτων όπως inodes, παραμέτρους εκκίνησης και ο ίδιος ο άνθρωπος.
Διαχείριση συστήματος: Οι εντολές και οι δαίμονες συνήθως προορίζονται για τη χρήση του root.
Ρουτίνες πυρήνα: Πληροφορίες που σχετίζονται με την εσωτερική λειτουργία του πυρήνα. Αυτό περιλαμβάνει διεπαφές συναρτήσεων και μεταβλητές χρήσιμες για προγραμματιστές που γράφουν προγράμματα οδήγησης συσκευών, για παράδειγμα. Στα περισσότερα συστήματα, αυτή η ενότητα δεν είναι εγκατεστημένη.

Όταν βλέπετε μια εντολή ακολουθούμενη από έναν αριθμό, αναφέρεται στην περιγραφή αυτής της εντολής σε αυτήν την ενότητα του εγχειριδίου. Για παράδειγμα, το man(1) αναφέρεται στην καταχώρηση στην ενότητα ένα του εγχειριδίου που περιγράφει την εντολή man.

Στην παραπάνω εικόνα, βλέπετε μια αναφορά στον άνθρωπο(7). Αυτό σημαίνει ότι υπάρχουν περισσότερες πληροφορίες για τον άνθρωπο σε άλλη ενότητα. Όταν ανοίξαμε για πρώτη φορά τη σελίδα man, εμφανίστηκε ο άνθρωπος(1). Εάν πληκτρολογήσετε μόνο άτομο χωρίς αριθμό ενότητας, ο χρήστης αναζητά όλες τις ενότητες με τη σειρά, αναζητώντας μια καταχώρηση για την εντολή που πληκτρολογήσατε. Φυσικά, βρήκε τον άνθρωπο(1) πριν από τον άνθρωπο(7).

Εάν θέλετε να αναγκάσετε τον άνθρωπο να βρει μια καταχώρηση από μια συγκεκριμένη ενότητα, πρέπει να συμπεριλάβετε τον αριθμό ενότητας στη γραμμή εντολών.

  Πώς να ασφαλίσετε τον διακομιστή σας Linux με το fail2ban

Για παράδειγμα, πληκτρολογούμε τα ακόλουθα για να ανοίξουμε την καταχώρηση για τον άνδρα στην ενότητα έβδομη:

man 7 man

ο

Το εγχειρίδιο ανοίγει στην καταχώριση άνδρα στην ενότητα έβδομη.

ΕΝΑ

Αυτή η σελίδα man παρέχει οδηγίες για τη σύνταξη σελίδων man. Περιγράφει τη μορφή αρχείου και τις μακροεντολές που μπορείτε να χρησιμοποιήσετε για να κάνετε κάποιες από τις εργασίες για εσάς. Η σελίδα man(1) στην ενότητα 1 που εξετάσαμε νωρίτερα περιέγραψε τον τρόπο χρήσης του ίδιου του ανθρώπου.

Πώς να βρείτε καταχωρήσεις σε ενότητες

Κανονικά, εάν θέλετε απλώς να μάθετε πώς να χρησιμοποιείτε μια εντολή, δεν χρειάζεται να δώσετε έναν αριθμό ενότητας. Ο άνθρωπος θα βρει την τυπική καταχώρηση που περιγράφει τον τρόπο χρήσης αυτής της εντολής στην ενότητα ένα του εγχειριδίου. Μερικές φορές, ωστόσο, χρειάζεται να ανοίξετε μια καταχώρηση εντολής σε μια συγκεκριμένη ενότητα επειδή θέλετε διαφορετικές πληροφορίες.

Μπορείτε εύκολα να μάθετε ποιες ενότητες του εγχειριδίου περιέχουν εγγραφές για μια εντολή. Κάθε σελίδα ανθρώπου έχει έναν τίτλο και μια σύντομη περιγραφή. Η επιλογή -f (whatis) πραγματοποιεί αναζήτηση στους τίτλους της σελίδας και επιστρέφει μια λίστα αντιστοιχιών.

Για αυτό το παράδειγμα, πληκτρολογούμε τα εξής:

man -f man

ο

Οι δύο σελίδες man for man παρατίθενται μαζί με τους αριθμούς ενοτήτων και τις σύντομες περιγραφές τους. Ωστόσο, να είστε προσεκτικοί—ορισμένες καταχωρήσεις έχουν το ίδιο όνομα, αλλά περιγράφουν διαφορετικές εντολές και λειτουργίες.

Για παράδειγμα, πληκτρολογούμε τα εξής:

man -f printf

ο

Φαίνεται ότι βρέθηκαν δύο καταχωρήσεις για printf: η πρώτη στην ενότητα ένα και μια άλλη στην ενότητα τρία. Ωστόσο, αυτές είναι διαφορετικές εντολές. Η σελίδα man στην ενότητα ένα περιγράφει την εντολή printf της γραμμής εντολών, η οποία μορφές εξόδου στο παράθυρο του τερματικού. Η σελίδα man στην ενότητα τρία περιγράφει το printf οικογένεια λειτουργιών βιβλιοθήκης στο Γλώσσα προγραμματισμού C.

Είναι επίσης δυνατή η αναζήτηση στις σύντομες περιγραφές, καθώς και στους τίτλους των σελίδων. Για να το κάνετε αυτό, χρησιμοποιείτε την επιλογή -k (apropos). Αυτό θα αντιστοιχίσει επίσης εμφανίσεις του όρου αναζήτησης μέσα σε άλλες, μεγαλύτερες, λέξεις.

Πληκτρολογούμε τα εξής:

man -k printf

ο

Πολλές από αυτές τις εντολές περιγράφονται στις ίδιες λίγες σελίδες man επειδή η βασική τους λειτουργικότητα είναι κυρίως η ίδια. Η σελίδα man για το vprintf περιγράφει τη λειτουργικότητα 10 από τις εντολές που αναφέρονται στην παραπάνω εικόνα.

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

Ας υποθέσουμε ότι θέλετε να αλλάξετε τον κωδικό πρόσβασης ενός λογαριασμού χρήστη. Μπορούμε να αναζητήσουμε οποιεσδήποτε εντολές που αναφέρουν “χρήστης” στους τίτλους ή τις περιγραφές της σελίδας man. Στη συνέχεια, μπορούμε να το διοχετεύσουμε μέσω του grep για να αναζητήσουμε καταχωρήσεις που περιέχουν “password”.

Για να γίνει αυτό, πληκτρολογούμε τα εξής:

man -k 'user ' | grep password

Επειδή περικλείσαμε τη λέξη “χρήστης” σε μονά εισαγωγικά και συμπεριλάβαμε ένα κενό στο τέλος, θα βρει αντιστοιχίες μόνο για “χρήστης” και όχι “χρήστες”. Μια γρήγορη ματιά στα αποτελέσματα αναζήτησης μας δείχνει ότι ο πιθανός υποψήφιος είναι passwd.

Επειδή είναι μια σελίδα ανθρώπου ενότητας και δεν χρειάζεται να συμπεριλάβουμε τον αριθμό ενότητας στην εντολή, πληκτρολογούμε τα εξής:

man passwd

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

man -k word | grep count

ο

Για να μάθουμε όλα όσα πρέπει να ξέρουμε για την καταμέτρηση λέξεων, πληκτρολογούμε αυτήν την εντολή:

man wc

Μιλώντας για το wc, μπορούμε επίσης να χρησιμοποιήσουμε την επιλογή -k (apropos) με μία μόνο τελεία (.) ως στόχο αναζήτησης, η οποία θα ταιριάζει με τα πάντα. Εάν το περάσουμε μέσω του wc και χρησιμοποιήσουμε την επιλογή -l (γραμμές), θα μας πει πόσες σελίδες man υπάρχουν στον υπολογιστή.

  Πώς να ρυθμίσετε το X2Go σε Linux

Για να τα κάνουμε όλα αυτά, πληκτρολογούμε την ακόλουθη εντολή:

man -k . | wc -l

ο

Υπάρχουν 6.706 σελίδες man σε αυτόν τον υπολογιστή Ubuntu, αλλά μην εκπλαγείτε αν ο αριθμός είναι διαφορετικός στον δικό σας. Μπορεί να διαφέρει ανάλογα με τα πακέτα λογισμικού και τα βοηθητικά προγράμματα που έχετε στον υπολογιστή σας και ποιες σελίδες man ήταν προεγκατεστημένες.

Αναζήτηση στη σελίδα ενός άνδρα

Μπορείτε επίσης να κάνετε αναζήτηση προς τα εμπρός ή προς τα πίσω από την τρέχουσα θέση σας μέσα σε μια σελίδα man.

Για αυτό το παράδειγμα, πληκτρολογούμε τα εξής για να ανοίξουμε τη σελίδα man για την εντολή ιστορικού:

man history

ο

Για αναζήτηση προς τα εμπρός, πατάμε την κάθετο προς τα εμπρός (/) και, στη συνέχεια, πληκτρολογούμε τη λέξη “συμβάν”. Ο στόχος αναζήτησης εμφανίζεται στο κάτω μέρος του παραθύρου του τερματικού και πατάμε Enter για να ξεκινήσει η αναζήτηση.

ο

Το παράθυρο εμφανίζει το πρώτο αποτέλεσμα τυχόν αντιστοιχιών που βρέθηκαν και επισημαίνονται.

ΕΝΑ

Πατήστε “n” για να μετακινηθείτε από το αποτέλεσμα στο αποτέλεσμα προς το κάτω μέρος της σελίδας. Για αναζήτηση προς τα πίσω στη σελίδα man, πατήστε “N”. Αυτό θα σας μεταφέρει πίσω στην αρχή της σελίδας.

Για να ενεργοποιήσετε και να απενεργοποιήσετε την επισήμανση, πατήστε Esc+U.

Εάν βρίσκεστε κοντά στο κάτω μέρος της σελίδας man και θέλετε να κάνετε αναζήτηση προς τα πάνω, πατήστε το ερωτηματικό (?) και, στη συνέχεια, πληκτρολογήστε τον όρο αναζήτησης. Αναζητήσαμε “είσοδος”.

ΕΝΑ

Και πάλι, επισημαίνονται τυχόν αποτελέσματα που ταιριάζουν.

Αποτελέσματα για τον όρο αναζήτησης

Για να αναζητήσετε το επόμενο αποτέλεσμα που ταιριάζει, πατήστε “n” για να μετακινηθείτε προς την αρχή της σελίδας man. Πατήστε “N” για να μεταβείτε στο προηγούμενο αποτέλεσμα που ταιριάζει και να μετακινηθείτε προς το τέλος της σελίδας man.

Υπάρχει ένας άλλος τρόπος για να κάνετε αναζήτηση σε μια σελίδα man. Αποκρύπτει όλες τις γραμμές που δεν περιέχουν αντιστοιχία με τον όρο αναζήτησής σας, επομένως είναι καλύτερο να χρησιμοποιείτε αριθμούς γραμμών με αυτήν την τεχνική.

Αν πληκτρολογήσουμε “-N” και πατήσουμε Enter, μπορούμε να δούμε τους αριθμούς γραμμών στη σελίδα man.

Πατάμε το σύμβολο (&), πληκτρολογούμε τον όρο αναζήτησης (αριθμός) και μετά πατάμε Enter.

ΕΝΑ

Εμφανίζονται μόνο οι γραμμές που περιέχουν τον όρο αναζήτησής μας.

Γραμμές που περιέχουν τη λέξη

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

Για να δούμε ξανά όλες τις γραμμές, πατάμε το σύμφωνο (&) και μετά πατάμε Enter.

ο

Πληκτρολογούμε “292” και μετά “g” για να πάμε σε αυτή τη γραμμή.

Μια εντολή για μετάβαση στη γραμμή

Μόλις πληκτρολογήσουμε “g”, οδηγούμαστε στη γραμμή 292 (γι’ αυτό το “g” δεν εμφανίζεται στην παραπάνω εικόνα). Στη συνέχεια, η γραμμή 292 εμφανίζεται στο επάνω μέρος του παραθύρου του τερματικού.

Μπορείτε να πατήσετε “-n” και να πατήσετε Enter για να αφαιρέσετε τους αριθμούς γραμμής.

Διαβάστε το Εγχειρίδιο Fabulous

Υπάρχει πληθώρα πληροφοριών στις σελίδες man. Ακόμη και με εντολές που πιστεύετε ότι γνωρίζετε καλά, είναι ασφαλές στοίχημα, υπάρχουν άλλες επιλογές που δεν έχετε ακούσει ποτέ.

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