Android系统shell中的clear命令实现
之前一直不太清楚,当我们在shell命令行输入很多命令,会在屏幕上输出一些信息,为什么一执行clear这个命令以后,所有的信息就没了呢?
现在终于搞明白了,找到了clear命令的源代码clear.c
源码如下:
#include <stdio.h> int clear_main(int argc, char **argv) { /* This prints the clear screen and move cursor to top-left corner control * characters for VT100 terminals. This means it will not work on * non-VT100 compliant terminals, namely Windows' cmd.exe, but should * work on anything unix-y. */ fputs("\x1b[2J\x1b[H", stdout); return 0; }
震惊了!!!就两行代码!!!这里面稀奇古怪的字符串重定向到stdout(标准输出)是什么东西呢?
其实是一串VT100的控制码,那这一串代码什么东西呢?
"\x1b[2J",//清除整个屏幕,行属性变成单宽单高,光标位置不变
"\x1b[H",//光标移动
更加详细的命令可以参考以下博文:
http://blog.sina.com.cn/s/blog_7347cd380100upwj.html
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Android横竖屏切换View设置不同尺寸或等比例缩放的自定义View的onMeasure解决方案(2)
Android横竖屏切换View设置不同尺寸或等比例缩放的自定义View的onMeasure解决方案(2) 附录文章1以xml布局文件方式实现了一个view在横竖屏切换时候的大小尺寸缩放,实现这种需求,也可以使用自定义View的onMeasure方法实现。比如,写一个自定义的ScaleRelativeLayout相对布局: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <zhangphil.scale.ScaleRelativeLayout android:id="@+id/scale_relative_layout" android:layout_width="0dp" android:layout_height="0dp" an...
- 下一篇
盘点国内那些免费的协同办公软件
BearyChat倍洽 BearyChat是一款面向企业和团队的沟通工具,支持 iOS、Android、MacOS、Linux、Windows 平台。 分为基础免费版、高级付费版(月付19元/人/月,年付199元/人/年)企业定制版。 产品官网:https://bearychat.com/ 零信 零信是一款企业内部沟通工具,支持群聊、私聊、应用接入、文件管理、视频会议等功能。支持企业自定义开发,它的基础功能免费,高级功能付费。 有免费版、标准版(9.9元/人/月)、定制版。 产品官网:https://pubu.im/ Tower Tower是一款基于云端的项目管理工具,主要的功能有讨论、任务、文档、文件这四大部分。Tower有网页端、微信端、iOS和Android应用。Tower采用的是免费+增值的服务模式。 产品官网:https://tower.im/ 然之 然之是一款面向中小团队的企业协同办公系统。由客户管理(CRM)、日常办公(OA)、现金记账(CASH)、团队分享(TEAM)和应用导航(IPS)等模块组成,针对企业协同办公,专注于提供一体化、精简的解决方案。 然之拥有开源版和专...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS关闭SELinux安全模块
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Red5直播服务器,属于Java语言的直播服务器