发现这个有趣的脚本可以在你的终端内画雪,但是......我希望有一个选项可以随时输入“q”来退出循环。这就是我所拥有的;
LINES=$(tput lines)
COLUMNS=$(tput cols)
declare -A snowflakes
declare -A lastflakes
clear
function move_flake() {
i="$1"
if [ "${snowflakes[$i]}" = "" ] || [ "${snowflakes[$i]}" = "$LINES" ]; then
snowflakes[$i]=0
else
if [ "${lastflakes[$i]}" != "" ]; then
printf "\033[%s;%sH \033[1;1H " ${lastflakes[$i]} $i
fi
fi
printf "\033[%s;%sH*\033[1;1H" ${snowflakes[$i]} $i
lastflakes[$i]=${snowflakes[$i]}
snowflakes[$i]=$((${snowflakes[$i]}+1))
}
while :
do
i=$(($RANDOM % $COLUMNS))
move_flake $i
for x in "${!lastflakes[@]}"
do
move_flake "$x"
done
sleep 0.1
done
Run Code Online (Sandbox Code Playgroud)
这是我尝试添加的;
echo "Type 'q' to exit out"
while …Run Code Online (Sandbox Code Playgroud) 这个想法是在 KDE 启动期间播放“问候”声音文件。
例如,在一个文件夹中,将有 10 个音频文件。比方说,命名1.ogg 2.ogg 3.ogg等。
实际播放的文件称为greetings.ogg.
如何随机获取这些文件之一并将其重命名为greetings.ogg不丢失 10 个原始文件?
我尽力了,但我失败了。