Un comando stat visualizza informazioni su un file o un file system. Con il comando stat, puoi ottenere informazioni come la dimensione del file, i suoi permessi, gli ID del gruppo e dell'utente che hanno accesso e la data e l'ora in cui il file è stato creato. Un'altra caratteristica del comando stat è che può anche fornire informazioni sul file system. Quando vogliamo conoscere le informazioni su un file, dovremmo usare questo strumento. Quindi in questo blog imparerai a conoscere il comando Stat in Linux con esempi appropriati.
Comando Stat in Linux
Il comando Stat è utile quando vuoi sapere tutto su un file specifico. Quella che segue è la sintassi di base per l'utilizzo di stat:
stat --options filenames
Ecco l'elenco delle informazioni che otteniamo dopo aver eseguito il comando stat in Linux:
Nome | Descrizione |
File | Rappresenta il nome del file fornito. |
Tipo di file | Rappresenta il tipo di file, ad esempio file speciali, directory, file regolari o collegamenti simbolici, ecc. |
ID | Mostra l'ID del file system in formato esadecimale. |
Nascita | Mostra l'ora in cui il file è stato creato. |
Taglia | Mostra la dimensione di quel particolare file (in byte) |
Dispositivo | Mostra il numero del dispositivo (in formato esadecimale) |
Blocchi | Mostra il numero totale di blocchi del disco rigido utilizzati per memorizzare il file. |
Blocco I/O | La dimensione di ogni blocco allocato (in byte) |
Modifica | Mostra i dettagli relativi all'ultima modifica. |
Contesto | Mostra il contesto di sicurezza SELinux memorizzato. |
Inode | Mostra il numero di Inode del file. |
Cambia | Mostra le informazioni sull'ora in cui l'attributo o il contenuto di un file è stato modificato l'ultima volta. |
Accesso | Rappresenta tutti i permessi di accesso (nei metodi numerici e simbolici) |
Link | Mostra il numero totale di collegamenti reali del file. |
Utile esempio di comando Stat in Linux
Ora spiegheremo diversi esempi e l'utilizzo del comando stat in Linux. Utilizzeremo il file Pyload.txt nell'esempio, che si trova nella directory Documenti.
1. Visualizza le informazioni relative al file system
Il comando Stat fornisce brevi informazioni sul file, ma se vuoi vedere le informazioni sul file system invece del file, usa l'opzione -f.
stat -f Pyload.txt- -
Se non utilizzi l'opzione -f nella statistica, otterrai il risultato in questo modo:
stat Pyload.txt
È possibile utilizzare l'opzione -t per stampare tutte le informazioni nel formato conciso. Quindi ecco il comando per la forma concisa:
stat -t ~/Documents/Pyload.txt
2. Collegamenti simbolici di dereferenziazione
Usa l'opzione -L, (–dereference) per dereferenziare il collegamento simbolico e visualizzare le informazioni sul file a cui punta:
stat -L ~/Documents/Pyload.txt
Per impostazione predefinita, il comando stat in Linux non segue i collegamenti simbolici. Otterrai informazioni sul collegamento simbolico, non sul file a cui punta, se esegui il comando su un collegamento simbolico:
stat ~/Documents/Pyload.txt
3. Comando Stat per più file
È possibile utilizzare il comando stat per ottenere le informazioni su più file. Qui stiamo usando il seguente comando per ottenere informazioni sui file Pyload.txt e Ubuntupit.tar.
stat Pyload.txt Ubuntupit.tar
4. Personalizza l'output del comando Stat
Il comando stat offre due diverse opzioni per personalizzare l'output in base alle tue esigenze e queste opzioni sono:
-c, (–format=”formato”)
–printf="formato".
La principale differenza tra le opzioni di cui sopra è che il --format
aggiunge automaticamente una nuova riga dopo ogni output di operando quando usi due o più file come operanti.
stat --format='%n' ~/Documents/Pyload.txt
stat --format='%n'\n ~/Documents/Pyload.txt
Utilizzando questo comando, puoi visualizzare solo il tipo di file:
stat --format="%F" ~/Documents/Pyload.txt
L'utilizzo di separatori personalizzati tra le direttive di formattazione consente di combinare un numero qualsiasi di direttive di formattazione. Ad esempio:
stat --format="%n,%F" ~/Documents/Pyload.txt
Per interpretare i caratteri speciali come newline o tab, usa l'opzione –printf:
stat --printf='Name: %n\nPermissions: %a\n' ~/Documents/Pyload.txt
Puoi utilizzare il comando seguente per ottenere i risultati specifici:
stat --printf='%U\n%G\n%C\n%z\n' ~/Documents/Pyload.txt
Qui:
- %U :Mostra il nome utente del proprietario
- %G :Mostra il nome del gruppo del proprietario
- %C: Mostra la stringa di contesto della sicurezza di SELinux
- %z :Mostra l'ora in cui si sono verificate le ultime modifiche (nel formato leggibile dall'uomo).
Con il comando seguente, il sistema mostra le diverse sequenze di formato per il file system:
stat --printf='%n\n%a\n%b\n' ~/Documents/Pyload.txt
- %n: Mostra il nome del file
- %a: Stampa i blocchi gratuiti disponibili per i non superutenti
- %b: Mostra i blocchi di dati totali in un file system
Se desideri ottenere l'elenco completo delle direttive di formato, esegui il comando seguente:
man stat
Finalmente, Approfondimento
Utilizzando il comando stat, è possibile stampare informazioni su file e file system. A volte funziona in sostituzione di Stat poiché mostra anche informazioni su determinati file. Quindi, se vuoi ottenere maggiori informazioni sul comando ls, visita il nostro sito Web ufficiale.