GNU/Linux >> Linux Esercitazione >  >> Linux

Linux du Command Tutorial per principianti (10 esempi)

A volte, mentre lavori sulla riga di comando di Linux, potresti voler conoscere rapidamente l'utilizzo del disco per un set di file o per una directory completa. C'è uno specifico strumento da riga di comando che ti consente di farlo, chiamato du . In questo tutorial, discuteremo le basi di questo strumento e le funzionalità che fornisce utilizzando esempi di facile comprensione.

Ma prima, vale la pena condividere che tutti gli esempi e le istruzioni qui menzionati sono stati testati su Ubuntu 16.04 LTS.

Linux con comando

Ecco la sintassi del comando du:

du [OPTION]... [FILE]...

E di seguito è come lo descrive la pagina man dello strumento:

du - estimate file space usage

Summarize disk usage of the set of FILEs, recursively for directories.

I seguenti esempi di domande e risposte dovrebbero darti un'idea migliore di come funziona du.

Q1. Come conoscere l'utilizzo del disco per uno o più file utilizzando du?

Quindi stiamo parlando dell'utilizzo di base dello strumento qui ed è molto semplice. Tutto quello che devi fare è passare i nomi di file corrispondenti come input al comando.

du [file1] [file2] ...

Segue un esempio:

Quindi, come puoi vedere nell'output, il numero visualizzato nella prima colonna rappresenta l'utilizzo del disco del file corrispondente.

Puoi farlo anche per una directory:

Nel caso di una directory, l'output mostra l'utilizzo del disco per le sottodirectory e per la directory principale nel suo insieme.

Q2. Come visualizzare le informazioni sull'utilizzo in forma leggibile dall'uomo?

Un problema quando si esegue du in modalità predefinita è che la cifra di utilizzo prodotta nell'output non chiarisce cosa rappresenta. Ad esempio, l'output negli screenshot mostrati nella sezione precedente non dice cosa sono "4" e "8":sono byte, kilobyte o cosa?

Quindi, per migliorare l'output, puoi utilizzare -h opzione della riga di comando:

du -h [file1] [file2] ...

Di seguito è riportato un esempio di questo:

Quindi ora è chiaro dall'output che l'utilizzo del disco è in kilobyte.

T3. Come fare in modo che du display contenga tutti i file in una directory?

Per impostazione predefinita, ogni volta che passi il nome di una directory come input a du, lo strumento mostra solo le informazioni relative all'utilizzo per la directory di input e le sottodirectory (se presenti).

Ma se il requisito è visualizzare separatamente le informazioni sull'utilizzo del disco anche per tutti i file, puoi farlo usando il -a opzione della riga di comando. Di seguito è riportato un esempio di questa opzione:

Q4. Come si fa a produrre un totale complessivo di utilizzo?

Questo può essere fatto usando il -c opzione della riga di comando. Ad esempio:

Come chiaro dallo screenshot qui sopra, viene aggiunta una nuova riga nella parte inferiore dell'output, che mostra il totale complessivo dell'utilizzo del disco.

Q5. Come visualizzare le informazioni sugli inode invece dell'utilizzo dei blocchi?

Per questo, devi usare --inode opzione. Di seguito è riportato uno screenshot di questa opzione in azione:

Q6. Come fare du accettare input da file o STDIN?

Questo può essere fatto usando --files0-from opzione della riga di comando. Supponiamo che i nomi dei file di input siano scritti in un file chiamato inp_list , quindi puoi usare il comando du nel modo seguente:

du --files0-from=inp_list

Ad esempio, ecco l'opzione in azione:

Tieni presente che i nomi che digiti nel file di input (inp_list nel nostro caso sopra) dovrebbe essere terminato con NUL. Ad esempio, la nostra inp_list il file conteneva i seguenti contenuti:

L'abbiamo fatto tramite Vim. Per sapere come puoi farlo tramite Vim, vai qui.

Andando avanti, puoi anche fare in modo che accetti input da STDIN. Per questo, devi passare un trattino (-) come valore a --files0-from opzione. In questo caso, dopo aver inserito ogni nome di file su STDIN, è necessario premere Ctrl+d due volte.

Q7. Come escludere la dimensione delle sottodirectory dalla dimensione della directory principale?

Verso la fine del primo trimestre precedente, abbiamo discusso di come utilizzare du per visualizzare l'utilizzo del disco per una directory. L'output ha rivelato che mentre la dimensione per le sottodirectory viene visualizzata separatamente, la voce per la directory principale (quella passata in input) mostra la dimensione combinata di tutto.

Nel caso in cui desideri mostrare la dimensione del genitore - dimensione delle sottodirectory nell'ultima voce, puoi utilizzare il -S opzione della riga di comando.

Q8. Come si fa a mostrare l'ora dell'ultima modifica in output?

Per questo, usa il --time opzione della riga di comando. Ecco un esempio:

Q9. Come si fa a escludere un particolare tipo di file?

Supponiamo che la tua directory contenga diversi tipi di file e desideri che il comando du non ne includa uno o più durante il calcolo dell'utilizzo del disco per la directory. Puoi farlo usando --exclude opzione, che richiede un modello come input.

du --exclude=PATTERN [Dir-name]

Ad esempio, lo screenshot seguente mostra il comando precedente in azione per i file .png.

Q10. Come definire la profondità della directory per du?

Se lo desideri, puoi anche limitare il comando du a una particolare profondità di directory. In questo modo lo strumento stamperà solo le informazioni sull'utilizzo per le directory che incontra al livello specificato dall'utente. È possibile accedere alla funzione utilizzando --max-depth opzione.

Quindi, se vuoi limitare du alla directory di primo livello, passa '0' come valore a questa opzione.

du --max-depth=0 [dir-name]

Di seguito sono riportati alcuni esempi di questa opzione:

Conclusione

du è un piccolo e pratico strumento da riga di comando che può venire in tuo soccorso in molte situazioni. Inoltre, non è difficile da capire e utilizzare. Abbiamo discusso alcune delle opzioni di base della riga di comando qui. Per maggiori dettagli, vai alla pagina man dello strumento.


Linux
  1. Tutorial sul comando cd di Linux per principianti (8 esempi)

  2. Tutorial comando Linux comm per principianti (5 esempi)

  3. Linux df Command Tutorial per principianti (8 esempi)

  4. Tutorial sul comando della data di Linux per principianti (8 esempi)

  5. Tutorial sul comando del nome host Linux per principianti (5 esempi)

Linux nl Command Tutorial per principianti (7 esempi)

Esercitazione sui comandi lscpu Linux per principianti (5 esempi)

Tutorial sui comandi Linux nm per principianti (10 esempi)

Esercitazione sui comandi OD Linux per principianti (6 esempi)

Linux w Command Tutorial per principianti (5 esempi)

Tutorial sui comandi Linux ss per principianti (8 esempi)