La maggior parte delle persone usa il comando ls con l'opzione -l per controllare i permessi su un file in Linux.
E se ti dicessi che esiste un modo migliore per controllare gli attributi dei file? È un comando semplice ma utile chiamato stat.
comando stat in Linux
Il comando stat elenca importanti attributi di file e directory. Può anche visualizzare informazioni sul filesystem, invece dei file.
Ha una sintassi semplice:
stat [options] files
Ci sono solo poche opzioni con il comando stat:
- -f :Mostra le informazioni per il filesystem invece del file
- -L :Segui i link simbolici e mostra le informazioni sul file a cui puntano
- -t :la modalità Terse stampa le informazioni in una singola riga
Utilizzo del comando stat per ottenere informazioni sui file
Ecco un esempio di output se usi il comando stat senza alcuna opzione:
stat sample.txt
File: sample.txt
Size: 426 Blocks: 8 IO Block: 4096 regular file
Device: 10302h/66306d Inode: 8259907 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1000/abhishek) Gid: ( 1000/abhishek)
Access: 2020-01-06 09:48:02.908946552 +0530
Modify: 2020-01-05 10:16:33.225203223 +0530
Change: 2020-01-06 19:51:28.737207649 +0530
Birth: -
Lascia che ti spieghi l'output:
- File :Nome del file.
- Taglia :Dimensione dei file in byte.
- Blocchi :Numero di blocchi del filesystem necessari al file sul disco.
- Blocco IO :dimensione di un blocco di filesystem. Di solito sono 4 KB.
- Tipo di file :Potrebbe essere file, directory, link, socket.
- Dispositivo :il numero del dispositivo (ID del disco rigido) in esadecimale e decimale.
- Inode :Il numero dell'inode. Ulteriori informazioni sugli inode in Linux.
- Link :Numero di collegamenti reali al file.
- Accesso :Permessi sui file in modalità assoluta e simbolica.
- Uid :ID utente e nome utente del proprietario del file
- Gid :ID gruppo e nome gruppo del proprietario del file.
- Accesso :questo accesso riguarda il timestamp di accesso (l'ultima volta che è stato effettuato l'accesso al file), chiamato anche atime.
- Modifica :Il timestamp di modifica (l'ultima volta che il file è stato modificato), chiamato anche mtime.
- Cambia :Il timestamp di modifica (l'ultima volta che è stato chiamato il file), chiamato anche ctime. Leggi questo articolo per saperne di più su atime, mtime e ctime.
- Nascita :Data di creazione originale del file. Questo non è usato in Linux.
Se utilizzi la modalità concisa con l'opzione -t, vedrai più o meno le stesse informazioni (alcuni ordini potrebbero essere diversi) in una singola riga ma senza alcuna descrizione di quale campo sia cosa.
[email protected]:$ stat -t sample.txt
sample.txt 426 8 81b4 1000 1000 10302 8259907 1 0 0 1578284282 1578199593 1578320488 0 4096
Ottieni informazioni sul filesystem con il comando stat
Puoi usare l'opzione -f per visualizzare le informazioni del filesystem invece del file stesso.
[email protected]:$ stat -f sample.txt
File: "sample.txt"
ID: 65205b688c8b079c Namelen: 255 Type: ext2/ext3
Block size: 4096 Fundamental block size: 4096
Blocks: Total: 61142095 Free: 41522899 Available: 38399635
Inodes: Total: 15597568 Free: 15279217
Come puoi vedere nell'output, ti fornisce le seguenti informazioni:
- File:nome del file.
- ID:ID filesystem in esadecimale.
- Namelen:lunghezza massima per i nomi di file.
- Tipo:tipo di filesystem.
- Dimensione del blocco:la quantità di dati per richiedere richieste di lettura per velocità di trasferimento dati ottimali.
- Dimensione fondamentale del blocco:dimensione di un blocco su filesystem
- Blocchi totali, blocchi liberi e blocchi disponibili (per utenti non root)
- Numero di inode totali e inode liberi
Utilizza il comando stat con più file
Puoi eseguire il comando stat con più file.
Puoi fornire i loro nomi individualmente in questo modo:
stat file1.txt file2.txt
Puoi anche fornire un modello di nome file:
stat *.txt
Spero che questo piccolo comando a portata di mano ti sia piaciuto. Resta sintonizzato per ulteriori informazioni sull'apprendimento dei comandi Linux.