Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Jak na odpočítávání v Batch

Zdravím, dělá nebo umí tady někdo s Batch-em? Pokud ano, mohl by mi prosím někdo říct, jak vypisovat proměnou na jednom (stejným) řádku a hodnota se bude každou vteřinu odečít z hodnoty bar1 a pote začne loop odzačáktu? Děkuji



:loop
set var1=5

:cekej
var2=var1-1
echo Loop se provede za : %var2%
goto cekej


goto loop
Předmět Autor Datum
Na aritmetické operácie treba treba v set použiť parameter /a Čiže set /a var2=var1-1 Ale tebe úpln…
pozorovateľ 12.03.2019 17:51
pozorovateľ
Když to chci vypisovat, těžko můžu použít timeout 5. nový
jurko75 12.03.2019 22:31
jurko75
Čo znamená vypisovať? Skúšal si to vôbec? Vypisuje to čísla aritmetickým radom až k nule, na rovnako… nový
pozorovateľ 13.03.2019 15:23
pozorovateľ
for i in $(seq 1000 -1 1);do echo -ne "\r\033[K$i" && sleep 1; done Jinak muzes nahlednou treba sem… nový
XoXoChanel 12.03.2019 18:05
XoXoChanel
To je snad Bash, ne? ;) nový
jurko75 12.03.2019 18:16
jurko75
Jo tak, uz mi to docvalko 'mea culpa' ;-) nový
XoXoChanel 12.03.2019 18:18
XoXoChanel
postup máš popsaný zde: https://www.instructables.com/id/The-Amazing-Progress-Bar-in-CMD/ nový
touchwood 13.03.2019 08:01
touchwood
to je krása :beer: nový
lední brtník 14.03.2019 09:25
lední brtník
tady to dosáhlo už téměř dokonalosti (používají CR bez LF): https://stackoverflow.com/questions/211… poslední
touchwood 14.03.2019 10:56
touchwood
for i in $(seq 1000 -1 1);do echo -ne "\r\033[K$i" && sleep 1; done

Jinak muzes nahlednou treba sem :
Zdroj : http://nuxadmin.blogspot.com/2011/10/bash-script-compte-rebours.html


odpocitavac() {
    i=$1
    echo " "
    while [[ $i -ge 0 ]]
      do
        echo -e "\033[31m\r "$i" \c\033[0m"
        sleep 1
        i=$(expr $i - 1)
    done
    echo " -  "
    echo -e "\033[32mKonec odpocitavani\033[0m"
}
odpocitavac30
exit

Zpět do poradny Odpovědět na původní otázku Nahoru