Mivel szezon van, tömeges megkeresések záporoznak felém, tudakolván, hogy mikor lesz folytatása a hirtelen félbemaradt azonos tartalmú kertészeti, minimum 4000 karakter hosszúságú, hozzászólásaim percenkénti közreadásának. Eddig az a taktikát követtem, hogy ilyenkor mindig elküldtem a linket: https://linuxmint.hu/comment/65379#comment-65379, gondolván ebben benne van minden. Nem feltételeztem, hogy más is ennyire kevéssé orientált térben és időben, mint én, ami újabb kérdéseket szül. Mert rendben, balacy kihívásának értelmében a végdátum május 12-e éjfél, de az még mennyi idő? Egyáltalán ma hanyadika van? Macerás ezt mindig kiszámolni.
Elkezdtem keresni az interneten és ezt találtam: https://linuxconfig.org/time-countdown-bash-script-example
Szóval nyitottam egy terminált:
nano countdown.sh
beillesztettem az alábbi tartalmat:
#!/bin/bash
if [ "$#" -lt "2" ] ; then
echo "Incorrect usage ! Example:"
echo './countdown.sh -d "Jun 10 2011 16:06"'
echo 'or'
echo './countdown.sh -m 90'
exit 1
fi
now=`date +%s`
if [ "$1" = "-d" ] ; then
until=`date -d "$2" +%s`
sec_rem=`expr $until - $now`
echo "-d"
if [ $sec_rem -lt 1 ]; then
echo "$2 is already history !"
fi
fi
if [ "$1" = "-m" ] ; then
until=`expr 60 \* $2`
until=`expr $until + $now`
sec_rem=`expr $until - $now`
echo "-m"
if [ $sec_rem -lt 1 ]; then
echo "$2 is already history !"
fi
fi
_R=0
_C=7
tmp=0
percent=0
total_time=0
col=`tput cols`
col=$[ $col -5 ]
while [ $sec_rem -gt 0 ]; do
clear
date
let sec_rem=$sec_rem-1
interval=$sec_rem
seconds=`expr $interval % 60`
interval=`expr $interval - $seconds`
minutes=`expr $interval % 3600 / 60`
interval=`expr $interval - $minutes`
hours=`expr $interval % 86400 / 3600`
interval=`expr $interval - $hours`
days=`expr $interval % 604800 / 86400`
interval=`expr $interval - $hours`
weeks=`expr $interval / 604800`
echo "----------------------------"
echo "A kihívás végéig hátravan:"
echo "hét: " $weeks
echo "nap: " $days
echo "óra: " $hours
echo "perc: " $minutes
echo "másodperc:" $seconds
echo -n "["
progress=$[$progress + 1]
if [ $total_time -lt 1 ] ; then
total_time=$[$hours * 3600 + $minutes * 60 + $seconds]
fi
printf -v f "%$(echo $_R)s>" ; printf "%s\n" "${f// /=}"
_C=7
tput cup 7 $col
tmp=$percent
percent=$[$progress * 100 / $total_time]
printf "]%d%%" $percent
change=$[$percent - $tmp]
_R=$[ $col * $percent / 100 ]
sleep 1
done
printf "\n"
Elmentettem a fájlt (Ctrl+O), majd kiléptem a Nano-ból (Ctrl+X)
A
chmod +x countdown.sh
paranccsal futtathatóvá tettem a fájlt.
Következett a
nano challange-countdown.sh
ebbe a fájlba a
#!/bin/bash ./countdown.sh -d "May 13 2024"
tartalmat tettem. Természtesen ezt is elmentettem, majd futtathatóvá tettem.
chmod +x challange-countdown.sh
Kész is vagyok. Most már csak nyitok egy terminált és kiadom a
./challange-countdown.sh
parancsot, máris pontos választ tudok adni ezzel a fontos kérdéssel kapcsolatban. :-)
A folyamat futását Ctrl+C-vel tudjátok megszakítani.
Lehet még fésülgetni, cicomázni, akár az indítópultba is betehető formában elkészíteni a dolgot, de alapvetően működik, a kihívásban szintén résztvevő fórumtársaknak is talán segítséget nyújthat abban, meddig tart még a vállalásuk, mennyi idejük van mondjuk elkészíteni az ennek keretében beküldendő blogbejegyzéseiket.


Hozzászólások
Ki hogyan halad a kihívással?
Beküldte kami911 -
Értékelés:
Ki hogyan halad a kihívással?
Ki hogyan halad a kihívással?
Beküldte csuhas32 -
Értékelés:
A kihívás keretén belül áthoztam ide két korábban másol közölt (bizonyára nagyképűen hangzik) szerintem értékes írásomat és megírtam ezt a kis szösszenetet. Volt ma egy megítélésem szerint elég jó hozzászólásom, ha nagyon akartam volna, egy kicsit feltupírozva blogot is lehetett volna kreálni belőle, de jó helyen van az így is. Nehéz időszak ez. A saját értékelésem szerint a kihívást már rég elbuktam a másik rész be nem tartása miatt , de az sokkal fontosabb, hogy a linuxmint.hu-n írhattam újra egy témába T.Istvánnal és 444tibivel.
Mivel a kihívást balacy hirdette meg, az lenne az igazi, ha ő értékelné, ki hogyan teljesített még akkor is, igencsak örülnék ennek, ha kapok majd egy kis jogos feddést. :-)
Egyébként a kihívás vége egybeesik egy másik eseményével is, úgyhogy az abból hátralévő időt is mutatja ez a kis visszaszámláló, akár el lehetett volna nevezni arról is, de a challenge-ben szerepelt, hogy bizonyos dolgokról nem beszélünk és hát ez is köztük volt.
Amúgy a visszaszámláló nekem így jobban tetszik:
Ha valakit esetleg érdekel, itt a változtatott részlet:
echo "------------------------------------" echo "A kihívás végéig hátravan:" echo "" echo " " $weeks "hét" $days "nap" echo "" echo $hours "óra" $minutes "perc" $seconds "másodperc"