基于swing的可交互的系统命令行工具及软件技术方案

技术编号:29583147 阅读:8 留言:0更新日期:2021-08-06 19:40
本发明专利技术公开了一种基于swing的可交互的系统命令行工具及软件。基于swing的可交互的系统命令行工具,包括:处理单元,用于获取用户输入的命令字符,并发送给操作系统,还用于接收所述操作系统反馈的输出字符,并发送给显示单元;所述显示单元,用于基于swing组件,在界面显示所述输出字符。基于swing的可交互的系统命令行工具可以集成到软件中,如java开发的图形化操作软件,用户在输入操作系统的命令时,不需要在退出软件的运行,单独打开操作系统的命令行工具,可以直接在软件中操作,扩大了软件的功能,大大了便利了用户使用。而且该工具还可以在多个平台上运行,例如,x86、arm系列平台、龙芯等。

【技术实现步骤摘要】
基于swing的可交互的系统命令行工具及软件
本专利技术涉及计算机
,尤其涉及一种基于swing的可交互的系统命令行工具及软件。
技术介绍
目前,各个操作系统的命令行工具(如windows的CMD和linux的Terminal)都只能在操作系统中独立运行,无法嵌入到所开发的软件中,这给软件的功能实现和易用性带来了重大问题,且也不利于用户的操作,用户需要不断切换操作系统的命令行工具和软件,用户体验性很差。
技术实现思路
本专利技术实施例提供一种基于swing的可交互的系统命令行工具及软件,用以解决现有技术中操作系统的命令行工具无法嵌入到所开发的软件中的问题。根据本专利技术实施例的基于swing的可交互的系统命令行工具,包括:处理单元,用于获取用户输入的命令字符,并发送给操作系统,还用于接收所述操作系统反馈的输出字符,并发送给显示单元;所述显示单元,用于基于swing组件,在界面显示所述输出字符。根据本专利技术的一些实施例,所述处理单元,包括:输入处理器,用于监听所述命令字符,并对所述命令字符进行处理后发送至所述操作系统;输出处理器,用于接收所述操作系统反馈的输出字符,并对所述输出字符处理后发送至所述显示单元。根据本专利技术的一些实施例,所述输入处理器,用于:判断所述命令字符的类型;当所述命令字符为文本字符,则将所述命令字符直接以字节方式发送至所述操作系统;当所述命令字符为控制字符,则对所述命令字符进行编码,并将编码后的命令字符发送至所述操作系统。根据本专利技术的一些实施例,所述输出处理器,用于:判断所述输出字符的类型;当所述输出字符为文本字符,则将所述输出字符直接以字节方式发送至所述显示单元;当所述输出字符为控制字符,则对所述输出字符进行解码,并将解码后的输出字符发送至所述显示单元。根据本专利技术的一些实施例,所述显示单元,用于:基于swing组件,在界面显示所述处理后的输出字符。根据本专利技术的一些实施例,所述命令字符的控制字符包括以下字符中的至少一种:回车字符、制表字符、删除字符、空格字符,上键字符、下键字符、左键字符、右键字符。根据本专利技术的一些实施例,所述输出字符的控制字符包括光标。根据本专利技术的一些实施例,所述光标的状态包括第一状态、第二状态、以及第三状态;所述显示单元,用于:当所述界面被选中,通过刷新所述界面,使得所述光标在第一状态和第二状态间交替呈现;当所述界面未被选中,所述光标保持第三状态;存储历史文本字符;根据当前界面的大小,获取对应个数的历史文本字符以及最新文本字符并显示。根据本专利技术的一些实施例,所述处理单元通过虚拟终端PTY与所述操作系统进行交互。根据本专利技术实施例的软件,所述软件集成有如上所述的基于swing的可交互的系统命令行工具。采用本专利技术实施例,通过swing实现操作系统命令的操作界面,并可以执行交互式的系统命令,不仅可以将操作系统命令行操作集成到java图形化软件中,还能实现跨平台运行,包括:x86、arm系列平台、龙芯。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。在附图中:图1是本专利技术实施例中基于swing的可交互的系统命令行工具结构示意图;图2是本专利技术实施例中文本字符存储结构示意图。具体实施方式下面将参照附图更详细地描述本专利技术的示例性实施例。虽然附图中显示了本专利技术的示例性实施例,然而应当理解,可以以各种形式实现本专利技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本专利技术,并且能够将本专利技术的范围完整的传达给本领域的技术人员。现在有一些实现远程连接linux的软件(如xshell)也可以执行本地操作系统的命令。但只能执行简单的系统命令,无法完成交互式系统命令的执行(如类似oracle的sqlplus命令,postgresql的psql命令,mysql的mysql命令),使用上受到极大的限制。而且,需要独立运行,无法嵌入集成到其他软件中使用,且非java语言开发,无法在java图形化软件中集成。基于此,本专利技术第一方面实施例提出一种基于swing的可交互的系统命令行工具,包括:处理单元,用于获取用户输入的命令字符,并发送给操作系统,还用于接收操作系统反馈的输出字符,并发送给显示单元;显示单元,用于基于swing组件,在界面显示输出字符,换言之,以界面的形式显示输出字符。本专利技术实施例的基于swing的可交互的系统命令行工具可以集成到软件中,如java开发的图形化操作软件,用户在输入操作系统的命令时,不需要在退出软件的运行,单独打开操作系统的命令行工具,可以直接在软件中操作,扩大了软件的功能,大大了便利了用户使用。而且该工具还可以在多个平台上运行,例如,x86、arm系列平台、龙芯等。在上述实施例的基础上,进一步提出各变型实施例,在此需要说明的是,为了使描述简要,在各变型实施例中仅描述与上述实施例的不同之处。根据本专利技术的一些实施例,处理单元,包括:输入处理器,用于监听命令字符,并对命令字符进行处理后发送至操作系统;例如,通过监听键盘的输入操作来获取用户输入的命令字符。输出处理器,用于接收操作系统反馈的输出字符,并对输出字符处理后发送至显示单元。根据本专利技术的一些实施例,输入处理器,用于:判断命令字符的类型;当命令字符为文本字符,则将命令字符直接以字节方式发送至操作系统;当命令字符为控制字符,则对命令字符进行编码,并将编码后的命令字符发送至操作系统。根据本专利技术的一些实施例,输出处理器,用于:判断输出字符的类型;当输出字符为文本字符,则将输出字符直接以字节方式发送至显示单元;当输出字符为控制字符,则对输出字符进行解码,并将解码后的输出字符发送至显示单元。根据本专利技术的一些实施例,显示单元,用于:基于swing组件,在界面显示处理后的输出字符,换言之,以界面的形式显示处理后的输出字符。界面以swing组件中的panel提供,可集成使用。根据本专利技术的一些实施例,命令字符的控制字符包括以下字符中的至少一种:回车字符、制表字符、删除字符、空格字符,上键字符、下键字符、左键字符、右键字符。根据本专利技术的一些实施例,输出字符的控制字符包括光标。如控制字符中出现1A,则代表需要将光标上移一行显示。根据本专利技术的一些实施例,光标的状态包括第一状态、第二状态、以及第三状态;显示单本文档来自技高网...

【技术保护点】
1.一种基于swing的可交互的系统命令行工具,其特征在于,包括:/n处理单元,用于获取用户输入的命令字符,并发送给操作系统,还用于接收所述操作系统反馈的输出字符,并发送给显示单元;/n所述显示单元,用于基于swing组件,在界面显示所述输出字符。/n

【技术特征摘要】
1.一种基于swing的可交互的系统命令行工具,其特征在于,包括:
处理单元,用于获取用户输入的命令字符,并发送给操作系统,还用于接收所述操作系统反馈的输出字符,并发送给显示单元;
所述显示单元,用于基于swing组件,在界面显示所述输出字符。


2.如权利要求1所述的基于swing的可交互的系统命令行工具,其特征在于,所述处理单元,包括:
输入处理器,用于监听所述命令字符,并对所述命令字符进行处理后发送至所述操作系统;
输出处理器,用于接收所述操作系统反馈的输出字符,并对所述输出字符处理后发送至所述显示单元。


3.如权利要求2所述的基于swing的可交互的系统命令行工具,其特征在于,所述输入处理器,用于:
判断所述命令字符的类型;
当所述命令字符为文本字符,则将所述命令字符直接以字节方式发送至所述操作系统;
当所述命令字符为控制字符,则对所述命令字符进行编码,并将编码后的命令字符发送至所述操作系统。


4.如权利要求3所述的基于swing的可交互的系统命令行工具,其特征在于,所述输出处理器,用于:
判断所述输出字符的类型;
当所述输出字符为文本字符,则将所述输出字符直接以字节方式发送至所述显示单元;
当所述输出字符为控制字符,则对所述输出字符进行解码,并将解码后的输出字符发送至所述显示单元。...

【专利技术属性】
技术研发人员:张元超冯路杨国卿苗健
申请(专利权)人:瀚高基础软件股份有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1