免费注册 查看新帖 |

Chinaunix

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

问一个可行性的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-04-06 12:34 |只看该作者 |倒序浏览
单纯使用bash, 能不能达到这个效果:
用 date +%H%M%S 得到一个6位的时间(hhmmss)
然后使用bash将其转换成LCD显示

比如说 date +%H%M%S 得到

092731

我想让它显示成:

         -    -     -   -     -   
        | |  | |     |   |     |   |
              -     -         -
        | |    |   |     |     |   |
         -    -     -         -


我想了半天
觉得不怎么可能
就算是使用sed 和awk也几乎没什么可能
还是我太笨了??:em12::em12:

论坛徽章:
0
2 [报告]
发表于 2007-04-06 12:41 |只看该作者
banner命令也许可以满足你的要求。
或许有启发。
  1.   banner -w 50 "`date \"+%H %M %S\"`" | awk 'BEGIN{W=50;for(i=0;i<200;i++)for(ii=0;ii<W;ii++) data[i*W+ii]=" ";}{for(i=1;i<=length($0);i++) data[(NR-1)*W+(i-1)]=substr($0,i,1); } END{for(ii=W;ii>0;ii--){for(i=0;i<NR;i++) printf("%s",data[i*W+ii]);printf("\n");}}'  
复制代码


[ 本帖最后由 doctorjxd 于 2007-4-6 19:12 编辑 ]

论坛徽章:
4
技术图书徽章
日期:2013-09-23 10:22:37狮子座
日期:2013-10-15 23:31:54卯兔
日期:2013-11-11 17:33:15金牛座
日期:2013-11-15 17:25:28
3 [报告]
发表于 2007-04-06 12:45 |只看该作者
banner出来的不是LCD显示,还是自己写function换吧

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
4 [报告]
发表于 2007-04-06 12:50 |只看该作者
估计挺麻烦的, 没多大意义~

论坛徽章:
0
5 [报告]
发表于 2007-04-06 12:55 |只看该作者
ANSI控制码,或tput命令。您自己搜and研究下吧

论坛徽章:
0
6 [报告]
发表于 2007-04-06 20:50 |只看该作者
banner 那个确实不怎么可行
研究一下tput看看

实在不行就只有用perl 了

论坛徽章:
0
7 [报告]
发表于 2007-04-07 04:09 |只看该作者
楼主函数写好后别忘了贴上来分享

论坛徽章:
0
8 [报告]
发表于 2007-04-07 12:14 |只看该作者
用个最通俗的while+cut+case+printf就ok了

。。。。。
想错了。。最少你的echo要支持定位。

[ 本帖最后由 shitou9000 于 2007-4-7 12:16 编辑 ]

论坛徽章:
0
9 [报告]
发表于 2007-04-07 19:08 |只看该作者
把1-9的LCD显示先写到对应文件,再来合并怎么样?这样有临时文件

论坛徽章:
0
10 [报告]
发表于 2007-04-08 00:12 |只看该作者
原帖由 vkill 于 2007-4-7 06:08 发表
把1-9的LCD显示先写到对应文件,再来合并怎么样?这样有临时文件




也这样想过
但是不能做到在一行显示
只能是一列
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP