plocate - εντοπίστε αρχεία κατά όνομα, γρήγορα
ΣΥΝΟΨΗ
plocate [ΕΠΙΛΟΓΗ]... ΠΡΟΤΥΠΟ...
ΠΕΡΙΓΡΑΦΗ
Το plocate εντοπίζει όλα τα αρχεία στο σύστημα που ταιριάζουν με το δεδομένο πρότυπο (ή με όλα τα πρότυπα, εάν δοθούν πολλά). Αυτό γίνεται με τη χρήση ενός ευρετηρίου που δημιουργείται από την εντολή updatedb(8) ή (λιγότερο συχνά) μετατρέπεται από ένα άλλο ευρετήριο από την εντολή plocate-build(8).
Το plocate είναι σε μεγάλο βαθμό συμβατό με την εντολή mlocate(1), αλλά είναι σημαντικά πιο γρήγορο. Συγκεκριμένα, σπάνια χρειάζεται να σαρώσει ολόκληρη τη βάση δεδομένων του, εκτός εάν το πρότυπο είναι πολύ μικρό (λιγότερο από τρεις χαρακτήρες) ή εάν θέλετε να αναζητήσετε μια κανονική έκφραση. Δεν προσπαθεί να διατηρήσει τη συμβατότητα με το BSD locate ή με ονόματα αρχείων που δεν είναι UTF-8 και με τοπικές ρυθμίσεις. Οι περισσότερες λειτουργίες εισόδου/εξόδου γίνονται ασύγχρονα, αλλά τα αποτελέσματα συγχρονίζονται, ώστε η έξοδος να εμφανίζεται πάντα με την ίδια σειρά.
Όταν δίνονται πολλά πρότυπα, το plocate θα αναζητήσει αρχεία που ταιριάζουν με όλα αυτά. Αυτή είναι η κύρια ασυμβατότητα με την εντολή mlocate(1), η οποία αναζητά αρχεία που ταιριάζουν με ένα ή περισσότερα πρότυπα, εκτός εάν δοθεί η επιλογή -A.
Από προεπιλογή, τα πρότυπα θεωρούνται ως υποσύνολα για αναζήτηση. Εάν δοθεί τουλάχιστον ένας μη-αποκωδικοποιημένος μετα-χαρακτήρας globbing (\*, ? ή []), τότε αυτό το πρότυπο θεωρείται ως ένα πρότυπο glob (το οποίο σημαίνει ότι πρέπει να ξεκινά και να τελειώνει με \* για μια αντιστοίχιση υποσυνόλου). Εάν δοθεί η επιλογή --regexp, τότε τα πρότυπα θεωρούνται ως (μη-αγκυρωμένες) βασικές κανονικές εκφράσεις POSIX και, εάν δοθεί η επιλογή --regex, τότε τα πρότυπα θεωρούνται ως εκτεταμένες κανονικές εκφράσεις POSIX. Όλα αυτά ταιριάζουν με τη συμπεριφορά της εντολής mlocate(1).
Όπως και η εντολή mlocate(1), η εντολή plocate εμφανίζει όλα τα αρχεία που είναι ορατά στον χρήστη που εκτελεί την εντολή (επειδή έχει δικαιώματα ανάγνωσης και εκτέλεσης σε όλους τους γονικούς καταλόγους) και κανένα από αυτά που δεν είναι, εκτελώντας την εντολή με τη ρύθμιση του bit setgid για την πρόσβαση στον ευρετήριο (το οποίο δημιουργείται ως root), αλλά ελέγχοντας την ορατότητα ως ο χρήστης που εκτελεί την εντολή.
ΚΩΔΙΚΟΣ ΕΞΟΔΟΥ
Η εντολή plocate εξέρχεται με κωδικό 0 για να υποδείξει ότι βρέθηκε μια αντιστοιχία ή ότι δόθηκαν οι επιλογές --help ή --version. Διαφορετικά, η εντολή plocate εξέρχεται με κωδικό κατάστασης 1, υποδεικνύοντας ότι προέκυψε ένα σφάλμα ή ότι δεν βρέθηκαν αντιστοιχίες.
ΕΠΙΛΟΓΕΣ
-A, --all
Αγνοείται για λόγους συμβατότητας με την εντολή mlocate(1).
-b, --basename
Αντιστοίχιση μόνο με το τμήμα του ονόματος αρχείου της διαδρομής, δηλαδή, τα ονόματα των καταλόγων θα αποκλειστούν από την αντιστοίχιση (αλλά θα εξακολουθούν να εκτυπώνονται). Αυτό δεν επιταχύνει την αναζήτηση, αλλά μπορεί να καταστείλει μη ενδιαφέρουσες αντιστοιχίες.
-c, --count
Μην εκτυπώνετε κάθε αντιστοιχία. Αντίθετα, μετρήστε τις και εκτυπώστε έναν συνολικό αριθμό στο τέλος.
-d, --database DBPATH
Εντοπίστε αντιστοιχίες στην παρεχόμενη βάση δεδομένων, αντί για το /var/lib/plocate/plocate.db. Αυτή η παράμετρος μπορεί να δοθεί πολλές φορές, για να αναζητηθούν πολλές βάσεις δεδομένων. Είναι επίσης δυνατό να δοθούν πολλές βάσεις δεδομένων σε μία παράμετρο, διαχωρισμένες με : \\. (Οποιοσδήποτε χαρακτήρας, συμπεριλαμβανομένου του : και του \\, μπορεί να διαφύγει με την προσθήκη μιας κάθετου πριν από αυτόν).
-e, --existing
Εμφάνισε μόνο τις εγγραφές που αναφέρονται σε αρχεία τα οποία υπάρχουν κατά τη στιγμή εκτέλεσης της εντολής locate. Σημειώστε ότι, σε αντίθεση με την mlocate(1), τα συμβολικά συνδεδεμένα αρχεία δεν ακολουθούνται από προεπιλογή (και στην πραγματικότητα, δεν υπάρχει επιλογή για να αλλάξει αυτό).
-i, --ignore-case
Εκτέλεσε μια αντιστοίχιση χωρίς διάκριση πεζών-κεφαλαίων, όπως καθορίζεται από την τρέχουσα τοπική ρύθμιση (η προεπιλογή είναι αντιστοίχιση με διάκριση πεζών-κεφαλαίων, κατά byte). Σημειώστε ότι η plocate δεν υποστηρίζει όλο το φάσμα των κανόνων αναδίπλωσης πεζών-κεφαλαίων Unicode· ειδικότερα, η αναζήτηση για το σύμβολο "ß" δεν θα επιστρέψει αποτελέσματα για το "ss", ακόμη και σε μια γερμανική τοπική ρύθμιση. Επίσης, σημειώστε ότι αυτή η επιλογή θα είναι ελαφρώς πιο αργή από μια αντιστοίχιση με διάκριση πεζών-κεφαλαίων, επειδή πρέπει να δημιουργήσει περισσότερους υποψήφιους για αναζήτηση στον δείκτη.
-l, --limit LIMIT
Σταμάτησε την αναζήτηση αφού βρεθούν LIMIT αποτελέσματα. Εάν δοθεί η επιλογή --count, ο αριθμός που θα εκτυπωθεί θα είναι το πολύ LIMIT.
-N, --literal
Εκτύπωσε τα ονόματα των εγγραφών χωρίς να τα περικλείει σε εισαγωγικά. Κανονικά, η plocate θα προσθέτει ειδικούς χαρακτήρες στα ονόματα αρχείων, έτσι ώστε να είναι ασφαλή για χρήση σε τυπικά κελύφη (παρόμοια με το στυλ απόλυτης διαφυγής κελύφους των GNU coreutils), εκτός εάν εκτυπώνεται σε μια σωλήνωση, αλλά αυτή η επιλογή θα απενεργοποιήσει αυτήν την προσθήκη.
-0, --null
Αντί να γράφει μια νέα γραμμή μετά από κάθε αποτέλεσμα, γράφει ένα μηδενικό byte (ASCII 0). Αυτό είναι χρήσιμο για τη δημιουργία μη αμφίσημων αποτελεσμάτων, όταν αυτά πρόκειται να υποβληθούν σε επεξεργασία από άλλα εργαλεία (όπως η xargs(1)), καθώς τα ονόματα αρχείων μπορούν να περιέχουν ενσωματωμένες νέες γραμμές.
-r, --regexp
Τα μοτίβα θεωρούνται ως βασικές κανονικές εκφράσεις POSIX. Ανατρέξτε στην σελίδα regex(7) για περισσότερες πληροφορίες. Σημειώστε ότι αυτό αναγκάζει μια γραμμική σάρωση σε ολόκληρη τη βάση δεδομένων, η οποία είναι αργή.
--regex
Όπως η --regexp, αλλά τα μοτίβα θεωρούνται ως εκτεταμένες κανονικές εκφράσεις POSIX.
-w, --wholename
Αντιστοίχισε ολόκληρο το όνομα της διαδρομής. Αυτή είναι η προεπιλογή, επομένως εκτός εάν δοθεί πρώτα η επιλογή -b (δείτε παραπάνω), δεν θα κάνει τίποτα. Επομένως, αυτή η επιλογή υπάρχει μόνο για λόγους συμβατότητας με την mlocate(1).
--help Εκτύπωσε πληροφορίες σχετικά με τη χρήση και, στη συνέχεια, τερμάτισε με επιτυχία.
--version Εκτύπωσε πληροφορίες σχετικά με την έκδοση και, στη συνέχεια, τερμάτισε με επιτυχία.
ΠΕΡΙΒΑΛΛΟΝ
LOCATE_PATH
Εάν δοθεί, προστίθεται μετά τη λίστα των διαδρομών της βάσης δεδομένων (είτε δίνεται μια ρητή είτε χρησιμοποιείται η προεπιλογή). Η οριοθέτηση με άνω και κάτω τελεία και η διαφυγή χαρακτήρων ακολουθούν τους ίδιους κανόνες με την επιλογή --database.
ΣΥΓΓΡΑΦΕΑΣ
Steinar H. Gunderson <_>
ΔΕΣ ΕΠΙΣΗΣ
plocate-build(8), mlocate(1), updatedb(8)