用于Linux的命令行/简单GUI开发最简单的语言是什么?

时间:2010-12-12 03:34:58

标签: linux user-interface command-line

我需要开发一大组工具来从服务器命令行运行(即不是客户端 - 服务器架构)。系统不一定是高性能的;我只想要一些容易开发的东西。

我可以使用哪些技术构建从命令行运行的简单GUI?我只需要菜单,我可以在对话框中选择一行/复选框/输入自由文本。

编辑:忘记添加,访问Mysql(即可用的驱动程序)是必不可少的。

6 个答案:

答案 0 :(得分:5)

Shell,带对话框,旧备用 - http://www.linuxjournal.com/article/2807

编辑 - 如果它与MySQL相关,请查看PERL-Tk和DBI。

答案 1 :(得分:3)

python + ncurses在这里是一个很好的组合。

答案 2 :(得分:2)

我喜欢使用re.pl库中的perl Devel::REPL来实现快速cli接口。在downvoting之前先阅读我的理由!

在这种类型的应用程序中,听起来您将进行查询类型的操作。这些自然适合“repl”风格的交互。 re.pl为您提供所有好处,即命令编辑和历史记录。您需要编写的只是用户将调用的函数。好处是知道perl的用户会意识到他们可以use任何已安装的模块来自行扩展系统的功能。在我的情况下,我使用re.pl创建一个类似mysqlclient的工具来访问和显示以标准mysqlclient无法处理的方式压缩的数据。

我引用perl,因为它的DBI是最好的数据库抽象,它是我用过的......但理由可以扩展到其他工具。 python的repl或任何其他将提供相同的好处。

答案 3 :(得分:1)

您可以使用Mono for Linux并在C#.NET中编写程序,然后使其适用于Linux,因为Mono允许这样做。

答案 4 :(得分:1)

就图形命令行界面而言,最好的框架之一是ncurses。它抽象了与图形命令行应用程序相关的大部分丑陋。

答案 5 :(得分:1)

我不得不说,使用Python,因为我喜欢它。

但是基于文本的界面几乎不值得,因为在你查看细节之前它们似乎是个好主意:

  • 文本用户界面并没有真正的标准键盘导航模型;他们都使用自己的计划
  • 如何支持unicode? (提示:这非常重要)
  • 不同的键盘布局怎么样?如果他们的键盘没有,例如“家”,“结束”或“逃脱”,有人按什么键?

ncurses不提供小部件集,只提供低级操作。上述问题的答案并不容易。

它确实表明,最近没有人考虑过基于键盘和文本的终端用户界面,或者这些都已经解决了。

Web界面已经解决了这些问题,实际上,如果您愿意,可以使用文本模式的Web浏览器。

像i(手机电话)这样的现代设备甚至便宜的手机都有一个足够好的网络浏览器。

编写一个使用非常简单的样式(少量图像,小Javascrfipt)的Web应用程序很容易,并且可以在各种设备上轻松工作。

所以我会说dmckee的评论“跟你所知道的一样”。

通过构建自己的基于终端的界面,您将长期将自己打入角落。