【发布时间】:2017-10-27 03:06:29
【问题描述】:
我有这个 Bash 微调器代码:
#!/bin/bash
spinner(){
SP_STRING=${2:-"'|/=\'"}
while [ -d /proc/$1 ]
do
printf "$SP_COLOUR\e7 %${SP_WIDTH}s \e8\e[0m" "$SP_STRING"
sleep ${SP_DELAY:-.2}
SP_STRING=${SP_STRING#"${SP_STRING%?}"}${SP_STRING%?}
done
}
## Adjust to taste (or leave empty)
SP_COLOUR="\e[1;31m"
SP_WIDTH=1.1 ## Try: SP_WIDTH=5.5
SP_DELAY=.3
sleep 7 &
spinner "$!" '/-\|'
有没有办法让它以多种颜色输出微调器?所以就像每次旋转一样,它都会改变颜色。
此外,当微调器运行时,输入行会显示在微调器之前并一直停留在那里,直到微调器完成。我可以在代码中编辑什么以使输入线位于微调器下方或之后?
【问题讨论】:
-
除非
SP_COLOUR、SP_WIDTH和SP_DELAY在别处使用,最好将它们从local改为spinner。
标签: bash