Last active
July 21, 2016 17:28
-
-
Save lorenzop/5205ab0079550db814c7b595a1a3db84 to your computer and use it in GitHub Desktop.
bash animation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# --fast | |
if [[ ! -z $1 ]] && [[ "$1" == "--fast" ]]; then | |
FAST=1 | |
fi | |
if [[ ! -z $1 ]] && [[ "$1" == "--no-loop" ]]; then | |
NOLOOP=1 | |
fi | |
# --step x | |
if [[ ! -z $1 ]] && [[ "$1" == "--step" ]]; then | |
SINGLE="$2" | |
STEP="$SINGLE" | |
fi | |
P=' ' | |
while true; do | |
clear | |
echo | |
[[ -z $SINGLE ]] && \ | |
((STEP++)) | |
echo | |
echo | |
echo | |
case $STEP in | |
1) | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P\e[1;37m ----- ( ) $P"; | |
echo -e "$P\e[1;37m ( ) ) --- $P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/||/|///||/|||///||$P";; | |
2) | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P\e[1;37m ----- ( ) $P"; | |
echo -e "$P\e[1;37m ( ) ) --- $P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/||/|//||//||||/|||$P";; | |
3) | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P\e[1;37m ----- ( )$P"; | |
echo -e "$P\e[1;37m ( ) ) --- $P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/||/|///||/|||///||$P";; | |
4) | |
echo -e "$P\e[1;37m ---$P"; | |
echo -e "$P\e[1;37m ----- ( $P"; | |
echo -e "$P\e[1;37m ( ) ) ---$P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/||/|//|||//|||/|||$P";; | |
5) | |
echo -e "$P\e[1;37m --$P"; | |
echo -e "$P\e[1;37m ----- ( $P"; | |
echo -e "$P\e[1;37m ( ) ) --$P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/||/|///||/|||///||$P";; | |
6) | |
echo -e "$P\e[1;37m -$P"; | |
echo -e "$P\e[1;37m ----- ( $P"; | |
echo -e "$P\e[1;37m ( ) ) -$P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/||/|//|||/||||/|||$P";; | |
7) | |
echo -e "$P $P"; | |
echo -e "$P\e[1;37m ----- ($P"; | |
echo -e "$P\e[1;37m ( ) ) $P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/||/|///||/|||///||$P";; | |
8) | |
echo -e "$P $P"; | |
echo -e "$P\e[1;37m ----- $P"; | |
echo -e "$P\e[1;37m ( ) ) $P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/|\e[0;37m___\e[0;32m//|||/||||/|||$P";; | |
9) | |
echo -e "$P $P"; | |
echo -e "$P\e[1;37m ----- $P"; | |
echo -e "$P\e[1;37m ( ) ) $P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/|\e[0;37m______\e[0;32m||/|||///||$P";; | |
10) | |
echo -e "$P $P"; | |
echo -e "$P\e[1;37m ----- $P"; | |
echo -e "$P\e[1;37m ( ) ) $P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/|\e[0;37m__________\e[0;32m|||/|||$P";; | |
11) | |
echo -e "$P $P"; | |
echo -e "$P\e[1;37m ----- $P"; | |
echo -e "$P\e[1;37m ( ) ) $P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/|\e[0;37m______________\e[0;32m/||$P";; | |
12) | |
echo -e "$P $P"; | |
echo -e "$P\e[1;37m ----- $P"; | |
echo -e "$P\e[1;37m ( ) ) $P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m --- $P"; | |
echo -e "$P $P"; | |
echo -e "$P $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;37m||________||\e[0;32m_/||$P";; | |
13) | |
echo -e "$P $P"; | |
echo -e "$P\e[1;37m ----- $P"; | |
echo -e "$P\e[1;37m ( ) )$P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[0;33m | \e[1;37m--- $P"; | |
echo -e "$P\e[0;33m |\\ $P"; | |
echo -e "$P\e[0;33m | \\ $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|\e[0;37m__\e[0;33m\\\\\e[0;37m______||\e[0;32m_/||$P";; | |
14) | |
echo -e "$P $P"; | |
echo -e "$P\e[1;37m -----$P"; | |
echo -e "$P\e[1;37m ( ) $P"; | |
echo -e "$P\e[1;37m ( )$P"; | |
echo -e "$P\e[0;33m | |\e[1;37m--- $P"; | |
echo -e "$P\e[0;33m |\\ /| $P"; | |
echo -e "$P\e[0;33m | \\ / | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|\e[0;37m__\e[0;33m\\\\\e[0;37m____\e[0;33m/\e[0;37m__\e[0;33m|\e[0;32m_/||$P";; | |
15) | |
echo -e "$P $P"; | |
echo -e "$P\e[1;37m ----$P"; | |
echo -e "$P\e[1;37m ( )$P"; | |
echo -e "$P\e[0;33m __________ \e[1;37m( $P"; | |
echo -e "$P\e[0;33m | | \e[1;37m---$P"; | |
echo -e "$P\e[0;33m |\\ /| $P"; | |
echo -e "$P\e[0;33m | \\ / | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|\e[0;37m__\e[0;33m\\\\\e[0;37m____\e[0;33m/\e[0;37m__\e[0;33m|\e[0;32m_/||$P";; | |
16) | |
echo -e "$P\e[1;30m , $P"; | |
echo -e "$P\e[1;30m ,/ \e[0;33m| \e[1;37m---$P"; | |
echo -e "$P\e[1;30m ,/ \e[0;33m| \e[1;37m( $P"; | |
echo -e "$P\e[1;30m /\e[0;33m_____|____ \e[1;37m( $P"; | |
echo -e "$P\e[0;33m | | \e[1;37m--$P"; | |
echo -e "$P\e[0;33m |\\ /| $P"; | |
echo -e "$P\e[0;33m | \\ / | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|\e[0;37m__\e[0;33m\\\\\e[0;37m____\e[0;33m/\e[0;37m__\e[0;33m|\e[0;32m_/||$P";; | |
17) | |
echo -e "$P\e[1;30m ,. $P"; | |
echo -e "$P\e[1;30m ,/ \e[0;33m|\e[1;30m\\. \e[1;37m--$P"; | |
echo -e "$P\e[1;30m ,/ \e[0;33m| \e[1;30m\\. \e[1;37m( $P"; | |
echo -e "$P\e[1;30m /\e[0;33m_____|____\e[1;30m\\ \e[1;37m( $P"; | |
echo -e "$P\e[0;33m | | \e[1;37m-$P"; | |
echo -e "$P\e[0;33m |\\ /| $P"; | |
echo -e "$P\e[0;33m | \\ / | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|\e[0;37m__\e[0;33m\\\\\e[0;37m____\e[0;33m/\e[0;37m__\e[0;33m|\e[0;32m_/||$P";; | |
18) | |
echo -e "$P\e[1;30m ,. $P"; | |
echo -e "$P\e[1;30m ,/ \\. \e[1;37m-$P"; | |
echo -e "$P\e[1;30m ,/ \e[1;30m_ _ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ \e[1;37m($P"; | |
echo -e "$P\e[0;33m | | $P"; | |
echo -e "$P\e[0;33m |\\ /| $P"; | |
echo -e "$P\e[0;33m | \\ / | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|\e[0;37m__\e[0;33m\\\\\e[0;37m____\e[0;33m/\e[0;37m__\e[0;33m|\e[0;32m_/||$P";; | |
19) | |
echo -e "$P\e[1;30m ,. $P"; | |
echo -e "$P\e[1;30m ,/ \\. $P"; | |
echo -e "$P\e[1;30m ,/ \e[1;30m_ _ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m | | $P"; | |
echo -e "$P\e[0;33m |\\ | $P"; | |
echo -e "$P\e[0;33m | \\ | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|\e[0;37m__\e[0;33m\\\\\e[0;37m_______\e[0;33m|\e[0;32m_/||$P";; | |
20) | |
echo -e "$P\e[1;30m ,. $P"; | |
echo -e "$P\e[1;30m ,/ \\. $P"; | |
echo -e "$P\e[1;30m ,/ \e[1;30m_ _ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m | | $P"; | |
echo -e "$P\e[0;33m | | $P"; | |
echo -e "$P\e[0;33m | | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|__________|\e[0;32m_/||$P";; | |
21) | |
echo -e "$P\e[1;30m ,. $P"; | |
echo -e "$P\e[1;30m ,/ \\. $P"; | |
echo -e "$P\e[1;30m ,/ \e[1;30m_ _ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m | | $P"; | |
echo -e "$P\e[0;33m | _ | $P"; | |
echo -e "$P\e[0;33m | |\e[0;36m0\e[0;33m| | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|______|_|_|\e[0;32m_/||$P";; | |
22) | |
echo -e "$P\e[1;30m ,. $P"; | |
echo -e "$P\e[1;30m ,/ \\. $P"; | |
echo -e "$P\e[1;30m ,/ \e[1;30m_ _ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m |\e[0;36m ___ \e[0;33m| $P"; | |
echo -e "$P\e[0;33m |\e[0;36m| | \e[0;33m _ | $P"; | |
echo -e "$P\e[0;33m |\e[0;36m|___| \e[0;33m|\e[0;36m0\e[0;33m| | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|______|_|_|\e[0;32m_/||$P";; | |
23) | |
echo -e "$P\e[1;30m ,. $P"; | |
echo -e "$P\e[0;31m || \e[1;30m\\. $P"; | |
echo -e "$P\e[1;30m ,/\e[0;31m|| \e[1;30m__ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m |\e[0;36m ___ \e[0;33m| $P"; | |
echo -e "$P\e[0;33m |\e[0;36m| | \e[0;33m _ | $P"; | |
echo -e "$P\e[0;33m |\e[0;36m|___| \e[0;33m|\e[0;36m0\e[0;33m| | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|______|_|_|\e[0;32m_/||$P";; | |
24) | |
echo -e "$P ~~ \e[1;30m,. $P"; | |
echo -e "$P\e[0;31m || \e[1;30m\\. $P"; | |
echo -e "$P\e[1;30m ,/\e[0;31m|| \e[1;30m__ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m |\e[0;36m ___ \e[0;33m| $P"; | |
echo -e "$P\e[0;33m |\e[0;36m| | \e[0;33m _ | $P"; | |
echo -e "$P\e[0;33m |\e[0;36m|___| \e[0;33m|\e[0;36m0\e[0;33m| | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|______|_|_|\e[0;32m_/||$P";; | |
25) | |
echo -e "$P ~~~ \e[1;30m,. $P"; | |
echo -e "$P\e[0;31m || \e[1;30m\\. $P"; | |
echo -e "$P\e[1;30m ,/\e[0;31m|| \e[1;30m__ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m |\e[0;36m ___ \e[0;33m| $P"; | |
echo -e "$P\e[0;33m |\e[0;36m| | \e[0;33m _ \e[0;33m| $P"; | |
echo -e "$P\e[0;33m |\e[0;36m|___| \e[0;33m|\e[0;36m0\e[0;33m| | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|______|_|_|\e[0;32m_/||$P";; | |
26) | |
echo -e "$P ~~ ~ \e[1;30m,. $P"; | |
echo -e "$P\e[0;31m || \e[1;30m\\. $P"; | |
echo -e "$P\e[1;30m ,/\e[0;31m|| \e[1;30m__ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m |\e[0;36m ___ \e[0;33m| $P"; | |
echo -e "$P\e[0;33m |\e[0;36m| | \e[0;33m _ | $P"; | |
echo -e "$P\e[0;33m |\e[0;36m|___| \e[0;33m|\e[0;36m0\e[0;33m| | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|______|_|_|\e[0;32m_/||$P";; | |
27) | |
echo -e "$P ~~ ~~ \e[1;30m,. $P"; | |
echo -e "$P\e[0;31m || \e[1;30m\\. $P"; | |
echo -e "$P\e[1;30m ,/\e[0;31m|| \e[1;30m__ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m |\e[0;36m ___ \e[0;33m| $P"; | |
echo -e "$P\e[0;33m |\e[0;36m| | \e[0;33m _ | $P"; | |
echo -e "$P\e[0;33m |\e[0;36m|___| \e[0;33m|\e[0;36m0\e[0;33m| | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|______|_|_|\e[0;32m_/||$P";; | |
28) | |
echo -e "$P ~~ ~~ ~ \e[1;30m,. $P"; | |
echo -e "$P\e[0;31m || \e[1;30m\\. $P"; | |
echo -e "$P\e[1;30m ,/\e[0;31m|| \e[1;30m__ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m |\e[0;36m ___ \e[0;33m| $P"; | |
echo -e "$P\e[0;33m |\e[0;36m| | \e[0;33m _ | $P"; | |
echo -e "$P\e[0;33m |\e[0;36m|___| \e[0;33m|\e[0;36m0\e[0;33m| | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|______|_|_|\e[0;32m_/||$P";; | |
29) | |
echo -e "$P~~ ~~~ ~ \e[1;30m,. $P"; | |
echo -e "$P\e[0;31m || \e[1;30m\\. $P"; | |
echo -e "$P\e[1;30m ,/\e[0;31m|| \e[1;30m__ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m |\e[0;36m ___ \e[0;33m| $P"; | |
echo -e "$P\e[0;33m |\e[0;36m| | \e[0;33m _ | $P"; | |
echo -e "$P\e[0;33m |\e[0;36m|___| \e[0;33m|\e[0;36m0\e[0;33m| | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|______|_|_|\e[0;32m_/||$P";; | |
30) | |
echo -e "$P~ ~~ ~~~ \e[1;30m,. $P"; | |
echo -e "$P\e[0;31m || \e[1;30m\\. $P"; | |
echo -e "$P\e[1;30m ,/\e[0;31m|| \e[1;30m__ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m |\e[0;36m ___ \e[0;33m| $P"; | |
echo -e "$P\e[0;33m |\e[0;36m| | \e[0;33m _ | $P"; | |
echo -e "$P\e[0;33m |\e[0;36m|___| \e[0;33m|\e[0;36m0\e[0;33m| | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|______|_|_|\e[0;32m_/||$P";; | |
31) | |
echo -e "$P ~~ ~ ~~ \e[1;30m,. $P"; | |
echo -e "$P\e[0;31m || \e[1;30m\\. $P"; | |
echo -e "$P\e[1;30m ,/\e[0;31m|| \e[1;30m__ \\. $P"; | |
echo -e "$P\e[1;30m /\e[0;33m__________\e[1;30m\\ $P"; | |
echo -e "$P\e[0;33m |\e[0;36m ___ \e[0;33m| $P"; | |
echo -e "$P\e[0;33m |\e[0;36m| | \e[0;33m _ | $P"; | |
echo -e "$P\e[0;33m |\e[0;36m|___| \e[0;33m|\e[0;36m0\e[0;33m| | $P"; | |
echo -e "$P\e[0;32m|/|_\e[0;33m|______|_|_|\e[0;32m_/||$P";; | |
esac | |
echo -e "\e[0m" | |
if [ ! -z $SINGLE ]; then | |
echo -e "\n\n\n" | |
exit 0 | |
fi | |
if [[ $STEP -eq 31 ]]; then | |
if [[ ! -z $NOLOOP ]]; then | |
echo -e "\n\n\n" | |
exit 0 | |
fi | |
STEP=27 | |
fi | |
echo | |
echo | |
echo | |
if [[ ! -z $FAST ]] && [[ "$FAST" != 0 ]]; then | |
sleep 0.2 | |
else | |
read -t1 -n1 -r INPUT | |
if [ ! -z $INPUT ]; then | |
exit 0 | |
fi | |
# sleep 1 | |
fi | |
done |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment