Android

Stat εντολή στο linux

How to use the command line on Mac

How to use the command line on Mac

Πίνακας περιεχομένων:

Anonim

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

Αυτό το άρθρο εξηγεί πώς να χρησιμοποιήσετε την εντολή stat .

Χρησιμοποιώντας την stat command

Η σύνταξη για την εντολή stat είναι η εξής:

stat… FILE…

stat δέχεται ένα ή περισσότερα ονόματα FILE εισόδου και περιλαμβάνει έναν αριθμό επιλογών που ελέγχουν τη συμπεριφορά και την έξοδο εντολών.

Ας ρίξουμε μια ματιά στο ακόλουθο παράδειγμα:

stat file.txt

Η έξοδος θα φαίνεται κάπως έτσι:

File: file.txt Size: 4030 Blocks: 8 IO Block: 4096 regular file Device: 801h/2049d Inode: 13633379 Links: 1 Access: (0644/-rw-r--r--) Uid: (1000/ linuxize) Gid: (1000/ linuxize) Access: 2019-11-06 09:52:17.991979701 +0100 Modify: 2019-11-06 09:52:17.971979713 +0100 Change: 2019-11-06 09:52:17.971979713 +0100 Birth: -

Όταν ενεργοποιείται χωρίς καμία επιλογή, το stat εμφανίζει τις ακόλουθες πληροφορίες για το αρχείο:

  • Αρχείο - Το όνομα του αρχείου.Size - Το μέγεθος του αρχείου σε bytes.Blocks - Ο αριθμός των κατανεμημένων δεσμών που παίρνει το αρχείο.IO Block - Το μέγεθος σε bytes κάθε block.File type - (π.χ., συμβολική σύνδεση…) Συσκευή - Αριθμός συσκευής σε hex και decimal.Inode - Αριθμός inode.Links - Αριθμός σκληρών links.Access - Αρχείο δικαιωμάτων στην αριθμητική και συμβολική methods.Uid - User ID και όνομα του ιδιοκτήτη.Gid - Ομάδα ID και όνομα του ιδιοκτήτη.Σύνδεση - Το περιβάλλον ασφαλείας SELinux.Access - Την τελευταία φορά που το αρχείο έχει προσπελαστεί.Modify - Την τελευταία φορά που το περιεχόμενο του αρχείου τροποποιήθηκε.Change - Την τελευταία φορά που άλλαξε το χαρακτηριστικό ή το περιεχόμενο του αρχείου.Birth - Χρόνος δημιουργίας αρχείου (δεν υποστηρίζεται στο Linux).

Εμφάνιση πληροφοριών σχετικά με το σύστημα αρχείων

Για να λάβετε πληροφορίες σχετικά με το σύστημα αρχείων όπου βρίσκεται το συγκεκριμένο αρχείο, αντί για πληροφορίες σχετικά με το ίδιο το αρχείο, χρησιμοποιήστε την επιλογή -f , ( --file-system ):

stat -f file.txt

Η έξοδος της εντολής θα φαίνεται ως εξής:

File: "package.json" ID: 8eb53097b4494d20 Namelen: 255 Type: ext2/ext3 Block size: 4096 Fundamental block size: 4096 Blocks: Total: 61271111 Free: 25395668 Available: 22265851 Inodes: Total: 15630336 Free: 13979610

Όταν το stat είναι επικαλούμενο με την επιλογή -f , εμφανίζει τις ακόλουθες πληροφορίες:

  • Αρχείο - Το όνομα του αρχείου.ID - Αναγνωριστικό συστήματος αρχείων σε hex.Namelen - Μέγιστο μήκος των ονομάτων αρχείων.Συμμετολικό μέγεθος μπλοκ - Το μέγεθος κάθε μπλοκ στο σύστημα αρχείων.Blocks:
    • Σύνολο - Αριθμός συνολικών μπλοκ στο σύστημα αρχείων.Δωρεάν - Αριθμός ελεύθερων τεμαχίων στο σύστημα αρχείων.Παρέχεται - Αριθμός ελεύθερων τεμαχίων που είναι διαθέσιμα σε χρήστες που δεν είναι χρήστες root.
    Inodes:
    • Σύνολο - Αριθμός συνολικών inode στο αρχείο system.Free - Αριθμός ελεύθερων inodes στο σύστημα αρχείων.

Ακολουθήστε τα συμπτώματα

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

stat /etc/resolv.conf

File: /etc/resolv.conf ->../run/systemd/resolve/stub-resolv.conf Size: 39 Blocks: 0 IO Block: 4096 symbolic link Device: 801h/2049d Inode: 8126659 Links: 1 Access: (0777/lrwxrwxrwx) Uid: (0/ root) Gid: (0/ root) Access: 2019-11-06 21:12:26.875956073 +0100 Modify: 2018-07-24 11:11:48.128794519 +0200 Change: 2018-07-24 11:11:48.128794519 +0200 Birth: -

Για να κάνετε dereference (ακολουθήστε) το symlink και να εμφανίσετε πληροφορίες σχετικά με το αρχείο στο οποίο αναφέρεται η συμβολική --dereference , χρησιμοποιήστε την επιλογή -L , ( --dereference ):

stat -L /etc/resolv.conf

File: /etc/resolv.conf Size: 715 Blocks: 8 IO Block: 4096 regular file Device: 17h/23d Inode: 989 Links: 1 Access: (0644/-rw-r--r--) Uid: (101/systemd-resolve) Gid: (103/systemd-resolve) Access: 2019-11-06 20:35:25.603689619 +0100 Modify: 2019-11-06 20:35:25.555689733 +0100 Change: 2019-11-06 20:35:25.555689733 +0100 Birth: -

Προσαρμογή της εξόδου

Η εντολή stat έχει δύο επιλογές που σας επιτρέπουν να προσαρμόσετε την έξοδο σύμφωνα με τις ανάγκες σας: -c , ( --format="format" ) και --printf="format" .

Η διαφορά μεταξύ αυτών των δύο επιλογών είναι ότι όταν χρησιμοποιούνται δύο ή περισσότερα αρχεία ως operants - το --format προσθέτει αυτόματα μια νέα γραμμή μετά την έξοδο κάθε τελεστέου. Το --printf ερμηνεύει τις διαφυγές πίσω.

Υπάρχουν πολλές μορφές οδηγιών για αρχεία και συστήματα αρχείων που μπορούν να χρησιμοποιηθούν με --format και --printf .

Για παράδειγμα, για να δείτε μόνο τον τύπο του αρχείου που θα χρησιμοποιούσατε:

stat --format="%F" /dev/null

character special file

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

stat --format="%n, %F" /dev/null

/dev/null, character special file

Για την ερμηνεία ειδικών χαρακτήρων όπως η νέα γραμμή ή η καρτέλα, χρησιμοποιήστε την επιλογή --printf :

stat --printf='Name: %n\nPermissions: %a\n' /etc

εκτυπώνει μια νέα γραμμή:

Name: /etc Permissions: 755

Το stat μπορεί επίσης να εμφανίσει τις πληροφορίες σε μορφή terse. Αυτή η μορφή είναι χρήσιμη για την ανάλυση από άλλα βοηθητικά προγράμματα.

Καλέστε την εντολή με την επιλογή -t ( --terse ) για να εκτυπώσετε την έξοδο σε μορφή terse:

stat -t /etc

/etc 12288 24 41ed 0 0 801 8126465 147 0 0 1573068933 1573068927 1573068927 0 4096

Για μια πλήρη λίστα με όλες τις οδηγίες μορφοποίησης για αρχεία και συστήματα αρχείων, πληκτρολογήστε man stat ή stat --help στο τερματικό σας.

συμπέρασμα

Η εντολή stat εκτυπώνει πληροφορίες σχετικά με δεδομένα αρχεία και συστήματα αρχείων.

Στο Linux, υπάρχουν πολλές άλλες εντολές που μπορούν να εμφανίσουν πληροφορίες σχετικά με δεδομένα αρχεία, με το ls να είναι το πιο χρησιμοποιημένο, αλλά δείχνει μόνο ένα κομμάτι των πληροφοριών που παρέχονται από την εντολή stat .

stat