Come utilizzare il comando Linux Stat

Come utilizzare il comando Linux Stat
Il comando stat è un'utilità utile che riporta informazioni su un determinato file o filesystem. Viene preinstallato con quasi tutti i sistemi Linux là fuori, quindi non c'è bisogno di preoccuparsi dell'installazione.

Controlliamo come utilizzare STAT per ottenere tutti i dati importanti necessari per un file/system specifico.

Perché il comando stat

A volte, potresti voler conoscere alcuni dettagli chiave su un determinato file/filesystem, ad esempio la dimensione del file, le autorizzazioni di accesso, il numero di inode, il tempo dell'ultimo accesso/modifica ecc. Concordato, puoi verificare molti dettagli su un file che utilizza LS. Tuttavia, Stat offre molto più approfondito sul file/filesystem di destinazione.

Quando dovresti usare Stat? Ogni volta che hai bisogno di quelle informazioni extra. Per un rapido confronto, controlliamo le informazioni sul file di file1.TXT. Per comprendere meglio l'output, scopri di più sul comando LH.

$ ls -lh file1.TXT

Ora, controlliamo cosa ha da offrire le statistiche.

$ stat file1.TXT

Sono molte informazioni! Non li hai bisogno di tutti nella vita di tutti i giorni, ma in una situazione specifica, Stat è super utile.

Utilizzo di Linux Stat: posizione

La maggior parte dei comandi Linux viene eseguita dalla directory /usr /bin.

$ quale stat

Utilizzo di Linux STAT: INFO di file/filesystem di controllo

L'abbiamo già visto in azione, giusto? La struttura dei comandi va così.

$ stat

Per vedere le informazioni approfondite di un file/filesystem, eseguire questo comando. In questo caso, è il mio file fidato1.TXT.

$ stat file1.TXT

Ci sono tonnellate di informazioni sul file specifico, giusto? Tutte le informazioni presentate sono etichettate. A seconda delle tue esigenze, raccogli quello importante. Dalla mia esperienza, quelli più usati sono le autorizzazioni di file, iNode e UID e/o GID.

Ora, controlliamo un esempio con un filesystem. In questo caso, sarà il punto di montaggio del filesystem. Ad esempio, questo comando mostrerà le informazioni del radice filesystem.

$ stat /

In Linux, (quasi) ogni singola cosa è un file. Qualsiasi filesystem è un file stesso, quindi l'output non sarà diverso.

Utilizzo di Linux Stat: forma concisa

Quando esegui le statistiche normalmente, tutte le informazioni vengono stampate in una struttura leggibile dall'uomo. Voglio una versione breve e semplice dell'output? Aggiungi l'argomento "-t".

$ stat -t /

Il formato conciso è un formato speciale che utilizza un elenco predefinito di specificatori del formato stat.

Utilizzo di Linux Stat: formato personalizzato

Questo è un altro utilizzo interessante del comando stat in cui è possibile progettare la struttura di output desiderata di Stat. Per eseguire questo compito, Stat offre un lungo elenco di specificatori di formato disponibili.

Ecco come appare il comando.

$ stat -Format =

Ad esempio, lo specificatore "%A" restituisce le autorizzazioni file/filesystem in un formato leggibile dall'uomo.

$ STAT -Format =%a File1.TXT

Il specificatore "%u" restituisce il proprietario del file/filesystem.

$ STAT -Format =%u /

Per ottenere le dimensioni del file, utilizzare il formato "%s".

$ stat -Format =%S File1.TXT

Vuoi il tipo di file? Usa "%f".

$ STAT -Format =%F File1.TXT

Per il numero di inode, usa "%i".

$ stat -Format =%I File1.TXT

Ora, combiniamo tutti insieme in un'unica riga di comando. Sembrerà così.

$ stat -format = " %a %u %s" /

Ci sono tonnellate di altri specificatori di formato che supportano le statistiche. Tutti sono elencati nella pagina delle statistiche man.

Ora, come abbiamo visto in precedenza l'argomento "-t" o "-terse", è un valore predefinito per i seguenti argomenti.

$ stat -formato = " %n %s %b %f %u %g %d %i %h %t %t %x %y %z %w %o %c"

Per quanto riguarda l'argomento "-terse -file-system", il valore predefinito è il seguente.

$ stat -formato = " %n %i %l %t %s %s %b %f %a %c %d"

Questi output sono molto utili se si utilizza stat in qualsiasi tipo di script, specialmente negli script bash. Nuovo in Bash Script? Dai un'occhiata alla guida per principianti agli script bash.

Printf vs Formato

Il comando stat supporta -printf argomento che funzioni sostanzialmente allo stesso modo di -formato. Tuttavia, la differenza principale tra loro è come viene prodotta l'output.

Chiamiamolo con un esempio. Qui, sto eseguendo stat con entrambi gli argomenti con lo stesso specificatore del formato.

$ stat -Format = " %a %u %s" file1.TXT
$ stat --printf = " %a %u %s" file1.TXT

Come possiamo vedere, il -formato L'argomento aggiunge una nuova riga dopo la fine dell'output. comunque, il -printf no. Per assicurarsi che ci sia una nuova riga dopo l'output, è necessario aggiungere "\ n" alla fine della stringa di specificatore del formato.

$ stat --printf = " %a %u %s \ n" file1.TXT

Distinguere tra file e collegamento

In alcune situazioni, potresti effettivamente lavorare con un link. Tuttavia, per impostazione predefinita, STAT non distingue tra un collegamento e un file fisico. C'è un argomento dedicato per aggirare questo problema. Basta passare l'argomento "-l".

$ stat -l

Pensieri finali

Lo strumento stat è piuttosto semplice. Tutte le sue funzioni sono gestite da semplici argomenti e bandiere. Una volta che sai quale usare, puoi trarne il massimo beneficio.

Per imparare ulteriormente in modo approfondito sul comando stat, consiglio vivamente di dare un'occhiata alla pagina Man. Contiene tutti gli specificatori del formato supportato e alcuni argomenti aggiuntivi che potresti trovare interessanti.

$ man stat

Godere!