Однако нашел этот интересный скрипт, который рисует снег внутри вашего терминала....
Я хотел бы иметь возможность в любое время ввести «q», чтобы выйти из цикла.
Это то, что у меня есть;
LINES=$(tput строк)
COLUMNS=$(tput cols)
объявить -A снежинки
объявить -A последние хлопья
чистый
функция move_flake() {
я = "$1"
если [ "${снежинки[$i]}" = "" ] || [ "${снежинки[$i]}" = "$LINES" ]; тогда
снежинки[$i]=0
еще
если [ "${lastflakes[$i]}" != "" ]; тогда
printf "\033[%s;%sH \033[1;1H" ${последние хлопья[$i]} $i
фи
фи
printf "\033[%s;%sH*\033[1;1H" ${снежинки[$i]} $i
последние хлопья[$i]=${снежинки[$i]}
снежинки[$i]=$((${снежинки[$i]}+1))
}
пока :
делать
i=$(($СЛУЧАЙНЫЙ % $СТОЛБЦ))
move_flake $i
для x в "${!lastflakes[@]}"
делать
move_flake "$x"
сделано
спать 0,1
сделано
это то, что я пытался добавить;
echo "Введите 'q', чтобы выйти"
while read -n1 -r -p "Хотите выйти из скрипта?"
делать
если [[ $REPLY == q ]];
тогда
сломать;
еще
#что бы ни
фи
сделано
добавил его внутри функции, но запрашивал только «q» в самом начале.
затем попытался добавить реальный скрипт в цикл выхода и рисует только снежинку, а затем снова спрашивает, хочу ли я выйти....
Любая идея, как заставить это работать?