Usando la riga di comando per mostrare le dimensioni fisiche e logiche dei contenuti di una cartella?


1

sfondo

Posso usare Finder per visualizzare le dimensioni fisiche (byte) e le dimensioni logiche (su disco). Questo funziona per

file, cartelle (contenuto), ma non volumi:
Size of a file Size of a folder used space on a Volume

In alternativa

posso usare mdls per ottenere le stesse informazioni sui metadati, ma funziona solo per i file:

$ mdls Screen\ Shot\ 2018-01-25\ at\ 16.21.06.png 
_kMDItemDisplayNameWithExtensions  = "Screen Shot 2018-01-25 at 16.21.06.png"
kMDItemAlternateNames              = (
    "Screen Shot 2018-01-25 at 16.21.06.png"
)
...
kMDItemLogicalSize                 = 54319
kMDItemOrientation                 = 1
kMDItemPhysicalSize                = 57344
...
kMDItemUseCount                    = 1
kMDItemUsedDates                   = (
    "2018-01-25 00:00:00 +0000"
)

Sfortuna

ho provato df e du ma nessuno dei due mostra né fisico né dimensioni logiche.

Finalmente la domanda!

Esiste un metodo a riga di comando per generare la dimensione fisica e logica del file di una cartella (contenuto) e / o un volume (contenuto)?

Risposte:


0

Puoi usare AppleScript per dire a Finder di ottenere la 'dimensione' o 'dimensione fisica':

tell application "Finder" to ¬
    get (physical size of folder (POSIX file "/Applications" as alias)) ¬
        / (1000 ^ 3) ¬
        & " GB" as text

Questo può essere eseguito in linea di comando usando osascript:

$ osascript -e 'tell application "Finder" to get (physical size of folder (POSIX file "/Applications" as alias)) / (1000 ^ 3) & " GB" as text'
49.212469248 GB
$ osascript -e 'tell application "Finder" to get (size of folder (POSIX file "/Applications" as alias)) / (1000 ^ 3) & " GB" as text'
55.858548673 GB


Bellissimo! Funziona anche con "/" e "/ Volumes / Macintosh HD" (anche se qui c'è meno differenza). Grazie. Fa tutto lo sforzo di scrivere la domanda utile.
Matt Sephton
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.