免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1483 | 回复: 2
打印 上一主题 下一主题

StatusBar under Terminal [复制链接]

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-08-10 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-01-25 22:56 |只看该作者 |倒序浏览
http://antzcn.blogspot.com/

<get its script>








  1. #!/bin/bash
  2. #
  3. #               Status Bar under Console                        
  4. #   
  5. #                       antzcn@gmail.com

  6. # colors to use
  7.   BLACK=""
  8.     RED=""
  9.   GREEN=""
  10. YELLOW=""
  11.    BLUE=""
  12. MAGENTA=""
  13.    CYAN=""
  14.   WHITE=""

  15. # seperator between items
  16. SEPTOR=$BLACK"|"$BLUE

  17. # start of string
  18. STRS=
  19. # end of string
  20. STRE=
  21. # the string of functions
  22. RESULT=

  23. # show current time
  24. TIME()
  25. {
  26.     RESULT+=`date +%H:%M:%S`
  27. }

  28. # show current tty name
  29. TTY()
  30. {
  31.     ttyname=`tty|awk -F/ '{print $3}'`
  32.     if [ "$ttyname" == pts ]; then ttyname=pts/`tty|awk -F/ '{print $4}'`;fi;
  33.     RESULT+=$ttyname
  34. }

  35. # check eth0
  36. ETH0()
  37. {
  38.     ifconfig eth0 | grep RUNNING > /dev/null
  39.     if [ $? != 0 ]; then RESULT+=$RED; fi;
  40.     RESULT+=eth0;
  41. }

  42. # update the status bar
  43. Update()
  44. {
  45.     RESULT=
  46.     RESULT+=$BLUE
  47.     TTY
  48.     RESULT+=$SEPTOR
  49.     ETH0
  50.     RESULT+=$SEPTOR
  51.     TIME
  52. }

  53. Update
  54. # colums of console
  55. COL=`stty size|awk '{print $2}'`
  56. # length of status bar
  57. LEN=`echo -n $RESULT|wc -c`
  58. # Location (X, Y) of status bar start
  59. X=$(($COL - $LEN + 24))
  60. Y=1

  61. # save cursor position
  62. STRS+=""
  63. # set cursor position
  64. STRS+="[$Y;$X""H"
  65. # set graphics mode
  66. STRS+=""
  67. # restore cursor position
  68. STRE+=""

  69. while [ 1 ]
  70.     do
  71.     Update
  72.     echo -ne $STRS $RESULT $STRE
  73.     usleep 500
  74. done

复制代码

[ 本帖最后由 antzcn 于 2007-1-26 12:35 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2007-01-26 09:20 |只看该作者
有点儿意思
有段日子俺也喜欢把时间放到右上角去, 后来发现拷贝屏幕输出的时候比较麻烦, 放弃了

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-08-10 06:20:00
3 [报告]
发表于 2007-01-26 12:27 |只看该作者
计划用NCURSES来做一个在console下的类Desktop的状态栏、快捷方式等,想把桌面的方便与console的低开销结合起来。
目前这个状态栏是用escape sequence来完成的,可以把邮件查收等需要不断检测的东西放进来。打算下一步用NCURSES来做,需要写一个虚拟终端。

原帖由 dearvoid 于 2007-1-26 09:20 发表
有点儿意思
有段日子俺也喜欢把时间放到右上角去, 后来发现拷贝屏幕输出的时候比较麻烦, 放弃了

[ 本帖最后由 antzcn 于 2007-1-26 12:28 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP