Tcl/Tk快速入門
原貼:http://if.ustc.edu.cn/~xbzhou/blog/archives/tcl_cn/l-tcl/l-tcl-2-1.html
目錄
1. Tcl/Tk基礎知識
2. Tcl語言
3. Tk命令
4. 開始認識Expect
1. Tcl/Tk基礎知識
1.1 Tcl/Tk 的起源
Tcl 是“工具控制語言(Tool Control Language)”的縮寫。Tk 是 Tcl“圖形工具箱”的擴充套件,它提供各種標準的 GUI 介面項,以利於迅速進行高階應用程式開發。
John K. Ousterhout(見影象)於 1988 年開始開發 Tcl/Tk(讀作“tickle tee-kay”),然後是加州大學伯克利分校(UCB)的一名教授繼續對它進行開發。Tcl 是以可擴充套件性、短的學習曲線和易於嵌入為特定目標而設計的。Tk 的開發始於 1989 年,第一個版本於 1991 年問世。Ousterhout 博士在他離開 UCB 之後繼續開發 Tcl/Tk,然後由於工作需要,他繼續為 Sun Microsystems 公司工作。現在,也就是在寫本文之時,他在
在 Linux 系統上研究 Tcl/Tk,需要有兩個主要程式。它們是 tclsh 和 wish。正如可以從其名稱所辨別的那樣,所以前者是 Tcl 外殼,常用於為外殼指令碼提供執行環境。Wish 類似於 tclsh,它是針對視窗化的 GUI 環境。
輸入下列命令,檢查這些檔案是否存在:
~/tcltk$ which tclsh /usr/bin/tclsh ~/tcltk$ which wish /usr/bin/wish
在下面的清單中,將會發現第一個很常見的示例程式,它是用 Tcl 實現的。這是一個完整的指令碼:第一行命令呼叫 tclsh 環境,第二行命令執行實際工作。用您所選擇的文字編輯器建立該指令碼,輸入
chmod +x hello.tcl
使之成為可執行檔案,然後執行它以測試您這件“作品”。
~/tcltk$ cat hello.tcl
#!/usr/bin/tclsh
puts stdout {Hello, World!}
~/tcltk$ ./hello.tcl
Hello, World!
Tcl 和 Tk 是解釋型的、可擴充套件指令碼語言。與 BSD 許可證十分相似,該許可證允許在任何情況下自由使用該軟體,只要在所有副本中保留該版權並且在任何分發中一字不差地傳遞通告。這個許可證條款使 Tcl/Tk 成為自由軟體。
Tcl/Tk 是一種解釋型環境。可以通過新增預編譯的 C 函式來擴充套件 Tcl 直譯器,可從 Tcl 環境內部呼叫 Tcl 直譯器。可以為特定目的或一般的以及廣泛使用的而定製這些擴充套件。我們將在教程的後面看一些擴充套件並著重看一下第一個擴充套件 — 非常流行的 Expect。
在接下來的幾屏中,將回顧 Tcl 語言的一些主要特性,從元字元和全域性變數到運算子、數學函式以及核心命令。畢竟,這些命令使 Tcl/Tk 成為有特色的,逐步發展的語言。請記住,在本教程中沒有篇幅涉及每條命令。這裡只突出一部分,以後您可以更進一步瞭解 Tcl/Tk。