簡易集計
vm list | tee >(awk 'NR>1 {vm+=1;cpu+=$4;mem+=substr($5,1,length($5)-1);} END {print "VM "vm" CPU "cpu" MEM "mem"G";}') (Runningのみ) vm list | tee >(awk 'NR>1 && $9=="Running" {vm+=1;cpu+=$4;mem+=substr($5,1,length($5)-1);} END {print "VM "vm" CPU "cpu" MEM "mem"G";}')
方法3. プロセス置換
もう一つの方法は、パイプの代わりにteeとプロセス置換を使う方法。zshとbashなら機能する。
find . -type f | tee >(pbcopy)
VMホストスペック
$ sysctl kern.smp.cpus kern.smp.cpus: 56 $ sysctl hw.physmem hw.physmem: 206011949056 $ grep -E '(memory|SMP)' /var/run/dmesg.boot real memory = 206158430208 (196608 MB) avail memory = 200627974144 (191333 MB) FreeBSD/SMP: Multiprocessor System Detected: 56 CPUs FreeBSD/SMP: 2 package(s) x 14 core(s) x 2 hardware threads $ zpool list NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT zdata 2.09T 924M 2.09T - - 0% 0% 1.00x ONLINE - zroot 127G 2.51G 124G - - 1% 1% 1.00x ONLINE - $ zfs list -r zdata
FreeBSDでCPUを調べる方法 2007