Chinaunix

标题: 如何使用shell脚本在终端上重绘一个字符? [打印本页]

作者: feiyuw    时间: 2007-07-24 16:56
标题: 如何使用shell脚本在终端上重绘一个字符?
想实现一个类似倒计时提醒的功能,目前的实现方法是一路显示10……9……8……7,能不能通过shell脚本实现重绘当前字符,个人觉得这样看着要舒服一点。
作者: 寂寞烈火    时间: 2007-07-24 17:04
参照本论坛精华区中ANSI控制码那贴子里的方法即可, 如:

  1. #!/bin/bash
  2. n=10
  3. while ((n>=0));do
  4. echo -ne "\033[10;1H$n\033[1D"
  5. sleep 1
  6. ((n--))
  7. done
复制代码

作者: aib    时间: 2007-07-24 23:53

  1. for i in {10..0};do echo -en "\033[31m $i \033[37m \r" && sleep 1;done
复制代码

作者: 寂寞烈火    时间: 2007-07-25 00:00
原帖由 aib 于 2007-7-24 23:53 发表

for i in {10..0};do echo -en "\033[31m $i \033[37m \r" && sleep 1;done

这里的\r用的妙!
作者: rdcwayx    时间: 2007-07-25 10:41
不错

[ 本帖最后由 rdcwayx 于 2007-7-25 21:05 编辑 ]




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2