на debian, который сейчас передо мной, free -t
показывает Total:
row:
total used free shared buffers cached
Mem: 8197980 2583348 5614632 0 222508 1904352
-/+ buffers/cache: 456488 7741492
Swap: 7807584 0 7807584
Total: 16005564 2550180 13455384
Если вам нужен только этот ряд, вы можете использовать tail
и awk
, чтобы получить значения.
Однако, если ваш free
не показывает эту строку, вы можете использовать awk с RS=""
для соединения строк:
free | awk -v RS="" '{print $10 "+" $17 "+" $21}' | bc
Если расположение столбцов в вашем free
отличается от моего, вам, возможно, придется повозиться с номерами полей.
Объяснение:
Поле RS
является разделителем записей. Установка этого значения в ""
объединяет все строки в выводе free, так что awk
может ссылаться на них, как на одну "строку".
Считая от начала, $1
- $6
- это заголовки столбцов, $7
- заголовок строки Mem:
, $8
- $10
- значения в этой строке... Поэтому $10
- это значение свободной памяти. Аналогичным образом это делается для следующих значений;
total used free shared buffers cached
Mem: $8 $9 $10 $11 $12 $13
-/+ buffers/cache: $16 $17
Swap: $19 $20 $21
Команда awk {print $10 "+" $17 "+" $21}
в основном соединяет эти значения с +
между ними, и вывод передается в bc
для вычисления суммы.
Tiene que eliminar la instancia real de VMWare.
Como estoy jugando con el nombre por defecto...
$ px ax | grep default | grep VMware
46826 ?? Ss 2:09.49 /Applications/VMware Fusion.app/Contents/Library/vmware-vmx -s vmx.noUIBuildNumberCheck=TRUE -# product=1;name=vmrun;version=1.17.0;buildnumber=7520154;licensename=VMware Fusion for Mac OS;licenseversion=10.0; -@ duplex=3;msgs=ui /Users/ruiribeiro/.vagrant/machines/default/vmware_fusion/c38ba960-54c2-4bf6-ba61-0388f47da5d9/vagrant.vmx
$ kill -9 46826
Luego, después de matarlo, finalmente logras limpiarlo/destruirlo con éxito:
$ vagrant destroy default
default: Are you sure you want to destroy the 'default' VM? [y/N] y
==> default: Deleting the VM...
$