Lisp and Scheme  - 讨论区

标题:用scheme语言进行UNIX系统编程

2011年02月02日 星期三 08:21

;;之前一直用bash写shell脚本,但是确实如文中所说写起来毫无快感,特别是脚本比较

;; 长的 时候更是如此,后来看了这篇文章,自己试了试scsh,感觉还不错

;;文章地址

http://www.ibm.com/developerworks/cn/linux/l-scheme/part1/

;;简介

scsh是一 scheme语言的UNIX shell编程环境。我们知道,作为一个计算机操作系统来讲的UNIX的基本概念,就是在 kernel 上外加上shell来控制这个计算机的方方面面的操作。这个操作按照shell语言的语法和语义来进行。如果shell语言由于各种各样的原因,不能满足用户的操作需求,一般来说,用户就会求助于C语言和直接的kernel的C语言编程接口。从这个角度来看的话,shell确实是这个系统里面非常关键的一环。

但是我们的使用经验也的确告诉我们,传统的UNIX shell并不是一个非常能令人感到舒适的用户界面环境,它有诸多的古怪之处。无论是传统UNIX shell的语法,还是它的语义,都不能让用户感到能够挥洒自如。新用户感到头疼,老用户也感到头疼。一方面,无论何时在需要使用一些高级一点的shell功能的时候,传统shell的语法就立刻变的让人难以忍受;另一方面,当自己的程序稍微变的规模大一点点的时候,自己看着自己写的这堆shell代码,真是怎么看怎么让自己难受,更不用说如果别人看到的话会怎么样了。

而scsh恰恰就能解决传统UNIX shell的这两个毛病。这当然首先要感谢scheme语言的精巧了。scsh成功的把scheme语言的精致和灵巧融入在了UNIX shell的环境里面;或者不如反过来说,scsh成功的把鲁莽而强大的UNIX系统,驯服在了scheme 语言提供的优雅有力而且准确的环境里面。关于这些的证明,我们在下面的多个例子里面很快就能一一看到。

本文由于篇幅的限制,不可能详细的介绍scheme语言。但是我们尽量的在讲到例子的时候, 把相关的scheme语言的内容都讲到。不过我们还是建议读者朋友们在阅读本文以前,能够 事先对scheme语言有一定的了解。在本文的"参考资料"部分列有关于scheme语言的一 些网上资料的链接。

zenity是一个非常简单的GTK+2的对话框工具。它可以在UNIX shell环境下,经由标 准的shell命令的方式,弹出GTK+2的对话框。这就使得在UNIX shell环境下编写一 些利用到这样的图形用户界面的对话框功能的程序,变的十分的容易。一个简单的shell命令就可以了。当然,目前的zenity还仅仅只是一个十分简单的对话框工具。只能显示出 种类有限的一些GTK+2的对话框,而且可以配置的地方也还不够多。不过,就本文的目的 来说,zenity眼前提供的功能已经足够了。在本文的结语部分,关于zenity,我们还有另 一些话要说。

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2022

    京ICP备05028076号