[发明专利]一种shell读取输入的方法及系统在审
申请号: | 201810002206.6 | 申请日: | 2018-01-02 |
公开(公告)号: | CN108205497A | 公开(公告)日: | 2018-06-26 |
发明(设计)人: | 高准枚 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 济南舜源专利事务所有限公司 37205 | 代理人: | 张亮 |
地址: | 450000 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 读取 二次确认 提示 服务器测试 操作效率 测试程序 错误字符 脚本开发 输入过滤 输入信息 有效解决 预期的 乱码 调用 算法 封装 键盘 判定 外部 应用 | ||
本发明提供了一种shell读取输入的方法及系统,应用于Linux和Unix平台,将读取外部输入信息的方法封装成函数,方便Shell脚本调用,增加输入二次确认提示,利用算法和判定方法来处理输入的字符以取得预期的输入二次确认提示,实现按Backspace键回删输入错误字符,输入过滤键盘外的特殊字符,提高服务器测试脚本开发效率和质量,提高了操作效率,有效解决测试程序输入回删出现乱码的问题。
技术领域
本发明涉及测试的技术领域,具体涉及一种shell读取输入的方法及系统。
背景技术
在开发服务器diag测试程序时大量的shell脚本使用,很多时候和场景都需要在屏幕前提示操作人员输入相应的机器信息,工站,操人员工号等然后通过脚本的参数接收相应的输入再跟标准数据进行核对。现有技术中,在shell脚本中要接收输入一般是使用read指令,或者是read命令与echo两者相结合使用,这种方法容易接收到乱码或者出现输入错误时,要删除错误的内容不灵活,尤其在这些场景需要频繁地使用到扫码,手动敲入,这种不便会更加地明显。
发明内容
基于上述问题,本发明提出了一种shell读取输入的方法及系统,提高开发以及操作人员的效率。
本发明提供如下技术方案:
一方面,本发明提供了一种Shell读取输入的方法,包括:
步骤101,调用函数,所述函数接收一参数;
步骤102,定义第一变量来接收用户输入,所述第一变量初始化为空,定义接收字符长度且初始化为零;
步骤103,按字符读取输入并存入第二变量,游标下移;
步骤104,判断所述第二变量的ASCII码值,当所述第二变量的ASCII码值等于8或127时,回删一位输入,所述字符长度减一,同时处理已经输入的字符;若所述第二变量的ASCII码值大于126或小于33则跳转至步骤103;若所述第二变量的ASCII码值小于等于126或大于等于33,第二变量值赋值至所述第一变量中保存,跳转至步骤103,若所述第二变量的ASCII码值为空则退出。
其中,所述参数为提示用户输入信息。
其中,所述函数为Shell脚本函数。
其中,所述方法应用于Linux或Unix平台。
另外,本发明还提供了一种Shell读取输入的系统,所述系统包括:
函数调用模块,用于调用函数,所述函数接收一参数;
函数执行模块,用于定义第一变量来接收用户输入,所述第一变量初始化为空,定义接收字符长度且初始化为零;按字符读取输入并存入第二变量,游标下移;判断所述第二变量的ASCII码值,当所述第二变量的ASCII码值等于8或127时,回删一位输入,所述字符长度减一,同时处理已经输入的字符;若所述第二变量的ASCII码值大于126或小于33则重新按字符读取输入;若所述第二变量的ASCII码值小于等于126或大于等于33,第二变量值赋值至所述第一变量中保存,重新按字符读取输入,若所述第二变量的ASCII码值为空则退出。
其中,所述参数为提示用户输入信息。
其中,所述函数为Shell脚本函数。
其中,所述系统应用于Linux或Unix平台。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810002206.6/2.html,转载请声明来源钻瓜专利网。