2

Mac の非アクティブ RAM と空き RAM の合計が遅くなったときに警告するために、geektool 用の小さな geeklet を作成しています。私は bash があまり得意ではないので、最終出力 (空白になる) に問題があります。コードは次のとおりです。

inMem=$(top -l 1|awk '/PhysMem/ {print $6}'|sed s/M//) | freeMem=$(top -l 1|awk '/PhysMem/ {print $10}'|sed s/M//) | totalMem=$inMem+$freeMem | bc | echo $totalMem

また、私の問題が最適かどうか疑問に思います。どうもありがとう。

4

3 に答える 3

2

これが実際にコマンドを簡素化できるかどうか疑問に思います。私はOSXを使っていないのでテストできませんが、うまくいくことを願っています。

read inMem freeMem totalMem < <(top -l 1 | awk '/PhysMem/ { i = $6; sub(/M/, "", i); f = $10; sub(/M/, "", f); printf("%d %d %d\n", i, f, i + f); exit; }')
echo "inMem: $inMem"
echo "freeMem: $freeMem"
echo "totalMem: $totalMem"
于 2013-09-04T13:52:32.857 に答える
-1

を解析する代わりに、ファイルtopを使用し/proc/meminfoます。たとえば、次のようにします。

$ head -2 /proc/meminfo
MemTotal:        4061696 kB
MemFree:          335064 kB

合計メモリと空きメモリを確認できます

于 2013-09-04T13:34:35.480 に答える