Posso recuperare un elenco delle dimensioni dei pacchetti installati su MacPorts?
Sì, so che sono compilati da fonti, ma se è noto un elenco di file generati, dovrebbe comunque essere calcolabile.
Potresti fare uso di port build nel comando contents
, che ti dà l'opportunità di fare cose del genere:
port contents --size depof:python27
Svuota le linee necessarie e fai i calcoli: -)
Aggiornamento: risposta trovata qui all'indirizzo guide.macports.
Mentre leggevo un po 'più a fondo, ho trovato questo
port space --units MB --total thisport
che è molto più utile quindi calcolare la somma delle dimensioni di ogni file all'interno di una porta.
Utilizzo del comando:
du -sh /opt/local/var/macports/software/*
riscrive tutte le directory e le dimensioni delle porte installate.
Utilizza il comando:
port -d echo installed
fa eco a un elenco delle porte installate.
Per elencare le dipendenze come una gerarchia
psd() {
port rdeps $1 2>/dev/null | sed -E "1 s/.*of (.*) @.*//" |
while IFS= read -r line
do
port_name="$(port space --total $line 2>/dev/null | cut -d ' ' -f 1-2)"
port_size=${port_name% *}
port_unit=${port_name#* }
printf "%-30s%12.2f %s\n" "$line" "$port_size" "$port_unit"
done
}
Esempio
$ psd mosh
mosh 895.03 KiB
pkgconfig 629.39 KiB
libiconv 6.27 MiB
gperf 0.00 B
ncurses 15.17 MiB
protobuf-cpp 44.11 MiB
autoconf 0.00 B
xz 1.68 MiB
gettext 24.82 MiB
expat 1.11 MiB
automake 0.00 B
libtool 4.19 MiB
zlib 738.74 KiB
openssl 17.50 MiB
p5.22-getopt-long 132.63 KiB
perl5.22 54.52 MiB
gdbm 553.91 KiB
p5.22-io-socket-ip 64.05 KiB
Regola la lunghezza dell'output formattato, 30
nel mio esempio, se necessario.
Se desideri che l'output sia troncato o arrotondato, consulta qui .
Per elencare il totale complessivo della gerarchia di cui sopra
alias pst='_() { port rdeps $1 2>/dev/null | cut -d : -f 2 | xargs port space --units MiB --total $1 2>/dev/null ; } ; _'
Esempio
$ pst mosh
172.312 MiB total
Potresti voler controllare port help space
.
Immagino che potresti aggiungere colorazione e ordine all'output.
Per ottenere ciascuna porta con un totale di tutte le porte, digita port space installed
Esempio di output:
41.354 KiB xorg-libXcomposite @0.4.4_0 141.987 KiB xorg-libXcursor @1.1.14_0 34.448 KiB xorg-libXdamage @1.1.4_0 74.149 KiB xorg-libXdmcp @1.1.2_0 33.258 KiB xorg-libXevie @1.0.3_0 312.101 KiB xorg-libXext @1.3.3_0 75.650 KiB xorg-libXfixes @5.0.3_0 337.943 KiB xorg-libXi @1.7.8_0 39.058 KiB xorg-libXinerama @1.1.3_0 436.256 KiB xorg-libXmu @1.1.2_0 143.032 KiB xorg-libXrandr @1.5.1_0 53.017 KiB xorg-libXScrnSaver @1.2.2_0 2.696 MiB xorg-libXt @1.1.5_1 87.028 KiB xorg-libXtst @1.2.3_0 92.010 KiB xorg-libXv @1.0.11_0 72.373 KiB xorg-libXxf86vm @1.1.4_0 135.396 KiB xorg-randrproto @1.5.0_0 10.171 KiB xorg-recordproto @1.14.2_0 57.425 KiB xorg-renderproto @0.11.1_0 7.189 KiB xorg-scrnsaverproto @1.2.2_0 49.408 KiB xorg-videoproto @2.3.3_0 849.766 KiB xorg-xcb-proto @1.12_1 66.130 KiB xorg-xcb-util @0.4.0_0 143.412 KiB xorg-xextproto @7.3.0_0 18.946 KiB xorg-xf86vidmodeproto @2.3.1_0 5.789 KiB xorg-xineramaproto @1.2.1_0 469.177 KiB xorg-xproto @7.0.31_0 171.815 KiB xrender @0.9.10_0 1.344 MiB XviD @1.3.4_0 1.575 MiB xz @5.2.2_0 3.102 MiB yasm @1.3.0_0 707.211 KiB zlib @1.2.8_0 3.645 GiB total
Bene, per impostazione predefinita installano su / opt / local quindi dovrebbe essere facile come cd / opt / local & & du -sh * per ottenere un elenco delle dimensioni del file. Non sono sicuro se è incorporato in MP di default per darti le dimensioni complessive
Leggi altre domande sui tag macports