Eu encontrei a solução. Eu simplesmente não entendi sua sintaxe bem o suficiente. Acabei de editar meu arquivo ~/.i3/i3status.sh
. Agora é:
#!/bin/sh
/usr/bin/i3status -c $HOME/.i3status.conf | while :
do
read line
RAM='free -kh | grep Mem | awk '{print $3}''
TOTR=$(cat /proc/meminfo | grep MemT | sed 's/.*\://g' | sed 's/ *//g' | sed 's/kB//g')
TOT=$(octave --eval "$TOTR/1024^2" | sed 's/ans = *//g' | sed 's/$/G/g' )
# Put uptime
uptime='uptime | awk '{print $3 " " $4}' | sed 's/,.*//''
hour=$(echo $uptime | sed 's/\:.*//g')
min=$(echo $uptime | sed 's/.*\://g')
UP="$hour h $min m"
# Compile C++ CPU prog and run it
g++ -o cpu.o $HOME/.i3/cpu.cpp
CPU=$(./cpu.o)
printf "%s\n" "Up: $UP | CPU: $CPU% | RAM: $RAM/$TOT | $line"
done
As linhas mais relevantes para o tempo de atividade estão entre # Put uptime
e # Compile C++...
e o comando final printf "%s\n"...
. Meus arquivos de configuração completos do i3 podem ser encontrados em este repositório .