Баш 67 знаків
read t u d w
echo -e '\t'|expand -t $d|sed 's/^/8/;s/ /=/g;s/$/B/;'
виклик до листа завдання:
uptime | ./cg1570uptime-bar.sh
Набагато коротше
всього 54 символи:
з цією варіацією:
echo -e '\t'|expand -t $3|sed 's/^/8/;s/ /=/g;s/$/B/;'
виклик, не 100% відповідно до правил:
./cg1570uptime-bar.sh $(uptime)
вихід в обох випадках:
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
Повсякденні трюки:
read t u d w
читає 06: 29: 53 = t, вгору = u, 16 = d відпочинок ... = w
без w, все до кінця буде поставлено в $ d.
розширення зазвичай використовується для перекладу вкладки на кількість пробілів і приймає параметр, якщо вам не подобається 8.
Захоплення 3-го параметра за допомогою $ 3 echo -e '\t'|expand -t $3|sed 's/ /=/g'
ще коротше, але потребує виклику, який не відповідає словам правил.