Bash 67 chars
read t u d w
echo -e '\t'|expand -t $d|sed 's/^/8/;s/ /=/g;s/$/B/;'
invocação para a letra da tarefa:
uptime | ./cg1570uptime-bar.sh
Muito mais curto
apenas 54 caracteres:
com esta variação:
echo -e '\t'|expand -t $3|sed 's/^/8/;s/ /=/g;s/$/B/;'
invocação, não 100% de acordo com as regras:
./cg1570uptime-bar.sh $(uptime)
saída nos dois momentos:
uptime && uptime | ./cg1570uptime-bar.sh
06:29:53 up 16 days, 21:03, 10 users, load average: 1.29, 1.34, 1.23
8================B
Truques não diários:
read t u d w
lê 06: 29: 53 = t, up = u, 16 = d descanso ... = w
sem w, tudo até o fim seria colocado em $ d.
O expand é normalmente usado para converter uma guia em uma quantidade de espaços em branco e usa um parâmetro se você não gostar de 8.
Agarrar o terceiro parâmetro com $ 3 in echo -e '\t'|expand -t $3|sed 's/ /=/g'
é ainda mais curto, mas precisa de uma invocação, não se ajustando às palavras das regras.