staging.inyokaproject.org

function pause für die .bashrc - sleep in schön

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

trollsportverein

Avatar von trollsportverein

Anmeldungsdatum:
21. Oktober 2010

Beiträge: 2627

MIt sleep lässt eine Wartepause vor dem nächsten Befehl realisieren. sleep zeigt aber nicht wie die Zeit abläuft. Schöner wird es mit einer pause function in der $HOME/.bashrc. Siehe Anhang.

pause () 
{ 
    bar='';
    [ -z "$@" ] && printf "\n \033[41m\033[1;36m==> function pause braucht die Angabe in Sekunden als Eingabe.\033[0m" || for ((x=0; x <= "$@"; x++ ))
    do
        sleep 1;
        bar="${bar} ";
        echo -ne "\r";
        echo -ne "Pause $@ Sekunden: \e[45m$bar\e[0m";
        local left="$(( $@ - $x ))";
        printf " %${left}s";
        echo -n "${x}";
    done;
    echo -e "\n"
}

Nicht vergessen, die $HOME/.bashrc wieder neu einlesen nach editieren dieser Bash Konfigurationsdatei:

source $HOME/.bashrc

Anwendungsbeispiel, bei dem dann echo eine Durchsage macht, nachdem die Zeit abgelaufen ist:

pause 10 && echo "Beep! Beep! Pause ist beendet."
Bash_function_pause.avif (42.2 KiB)
Download Bash_function_pause.avif
Antworten |