Windows和Linux上的GUI应用程序

时间:2010-04-14 09:26:07

标签: windows linux user-interface bash

我想将Bash Shell自动化脚本项目导出到可以在Windows和Linux中运行的GUI项目。哪种编程语言更适合这个?

6 个答案:

答案 0 :(得分:1)

  

Qt 将是一个非常好的选择。

Qt基本上是跨多个平台快速GUI开发的一个很好的工具。

PLUS你可以使用C ++编写代码,我认为这是你在你的项目中理想使用的。

http://qt.nokia.com/

一个好的起点就是 “使用Qt 4,第二版进行C ++ GUI编程

(谷歌下载pdf版本;-))

祝你好运!!

答案 1 :(得分:1)

我想知道桌面Kornshell(DtKsh)是否适用于Linux和Windows。

早在20世纪90年代,Desktop Kornshell就成为了CDE(通用桌面环境)的一部分。这是Unix系统尝试提供统一的GUI桌面以与Windows竞争。你知道这有多好。

Ksh 93和BASH分享了大约99%的语法。 (哎呀,我甚至更喜欢Ksh,但后来我记得我的第一个硬盘 - 一个惊人的20Mg型号只有5英寸大小。他们怎么这么小?)。然而,桌面Kornshell增加了一个GUI层Ksh 93的顶部。您可以使用标准的Ksh脚本,添加只需在上面添加一个GUI层。我使用了一些Kornshell脚本。甚至编写了一个基于Mail Handler(MH)的图形邮件程序。

不幸的是,获得dtksh的最简单方法是将时间机器带回1994年。

除此之外,我真的不知道DtKsh是否仍然可用。我相信MKS Toolkit仍然附带DtKsh。如果你为Cygwin收取数百美元,MSK Toolkit就像Cygwin。我怀疑Cygwin有一个DtKsh包(也许他们这样做)。 Linux发行版用于附带DtKsh软件包,但这些软件包可能已经采用了UUCP,SCCS和RCS软件包。

但是,如果DtKsh可用,那将是您最好的选择。您可以轻松修改Bash脚本以提供良好的GUI界面。

我知道有人提到过Mono和C#,但这需要一台.NET服务器。这意味着您不仅要重写所有内容,还要设置IIS服务器。

Java可能是您的首选。 Java是一种强大的语言,Java开发人员很容易找到。 Swing框架附带Java并提供了足够的GUI。我有几个Swing应用程序(比如我的LDAP浏览器),我使用了很多。不幸的是,大多数Java开发人员从未接触过Swing。

Python还附带了一个GUI shell,但是使用GUI shell的Python开发人员可能比使用Swing的Java开发人员少。不过,Python是一种流行的语言,有很多资源和开发人员可用。此外,了解Python和Java开发人员,我想说,如果让Java开发人员学习Swing,可能会有更好的机会让Python开发人员学习Python GUI编程。

所以,你最好的选择是看看你是否还能获得DtKsh。如果没有,我会选择Java或Python。

答案 2 :(得分:0)

无论你感到最舒服。 Mono允许C#用于此类事情;两个平台都支持Java。我相信别人可以被建议。但坚持你最舒服的地方。

答案 3 :(得分:0)

你无法真正'出口'它。我不知道你是否可以真正“移植”它而不会继承所有非平凡的shell脚本通常会产生的问题。

最好用Python,Perl,Java等交叉平台语言重写应用程序(根据DAvid的建议选择你喜欢的内容)。我建议使用'脚本'语言,因为原始脚本是在shell中,它会更接近镜像,而不是像C或C ++这样的编译语言。对于跨平台的GUI库,有TK(丑陋但很快就可以使用Python或其他类似语言工作),WX(我的推荐)或Qt(正如ChristopheD建议的那样)。

答案 4 :(得分:0)

不确定这是否真的能回答你的问题,但是......

如果您正在寻找一个可以跨平台工作的GUI应用程序,它听起来像是一个适合Java的好地方。 SWT平台(由eclipse人员开发)允许您创建一个在大多数平台(Windows,Mac,Unix / Linux的许多优势)上看起来都是原生的GUI。

请参阅:

http://www.developer.com/java/other/article.php/3330861/SWT-Programming-with-Eclipse.htm

但正如另外两张海报所指出的那样,通常用你所知道的东西更快。

答案 5 :(得分:0)

用GUI进行哼哼BashScript?是的,伙计,我们疯了.. = P

看看我的问题,我在这方面做了一些研究......

How to bring an image inside a GUI? Its possible in BashScript or Let's learn a new language?

猜猜你可以在脚本中编写代码。或者非常接近的事情。