Você deve conseguir resolver esse problema usando grep
.
Para obter apenas a linha -/+ buffers/cache
, altere seus comandos free
para isso:
free -mt | grep buffers/cache >> memory.txt;
free -mt | grep buffers/cache;
Para obter apenas as temperaturas tente:
sensors | grep °C >> temp.txt;
sensors | grep °C;
Usando o seguinte script:
#!/bin/bash
clear;
echo "---------------------------RAM Load------------------------------$"
free -mt | grep buffers/cache >> memory.txt;
free -mt | grep buffers/cache;
echo "---------------------------Temperature---------------------------$"
sensors | grep °C >> temp.txt;
sensors | grep °C;
Produz esta saída:
---------------------------RAM Load------------------------------$
-/+ buffers/cache: 1545 449
---------------------------Temperature---------------------------$
Physical id 0: N/A (high = +100.0°C, crit = +100.0°C)
Core 0: N/A (high = +100.0°C, crit = +100.0°C)
Physical id 2: N/A (high = +100.0°C, crit = +100.0°C)
Core 0: N/A (high = +100.0°C, crit = +100.0°C)
aploetz@dockingBay94:~$
Para remover o texto extra que você não deseja, você pode tentar usar awk
.
$ free -mt | grep buffers/cache | awk '{print "\t"}'
1588 406
As temperaturas serão um pouco mais complicadas, mas podem ser feitas com tr
.
$ sensors | grep Physical | tr -d '(),' | awk '{print "\t"}'
+100.0°C +100.0°C
+100.0°C +100.0°C
$sensors | grep Core | tr -d '(),' | awk '{print "\t"}'
+100.0°C +100.0°C
+100.0°C +100.0°C
Se você quiser se livrar dos pontos positivos, basta adicionar '+' ao sinalizador de exclusão:
$ sensors | grep Core | tr -d '(),+' | awk '{print "\t"}'
100.0°C 100.0°C
100.0°C 100.0°C