在linux中,tcl全名為“Tool Command Language”,意思是“工具命令語言”,是一種基於字串的命令語言,是一種解釋性語言;TCL常被用於快速原型開發,腳本編程,GUI和測試等方面。
本教學操作環境:linux5.9.8系統、Dell G3電腦。
什麼是Tcl?
Tcl(Tool Command Language)是一種腳本語言,是一種基於字串的命令語言,是一種解釋性語言。所謂解釋性是指不像其他高階語言需要透過編譯和聯結,而與其他Shell語言一樣,直接對每個語句順序解釋執行;
TCL最初在Unix平台中。後來移植到Windows,DOS,OS/2和Mac OSX。 TCL非常類似其他UNIX的shell語言,類似Bourne Shell (Sh), the C Shell (csh), the Korn Shell (sh), 和 Perl。
它的目的是提供程序與其他程序,也是作為一個可嵌入的翻譯相互作用的能力。雖然原來的目的是為了使程式能夠進行交互,可以找到由Tcl/Tk 編寫的完全成熟的應用。
TCL經常被用於快速原型開發,腳本編程,GUI和測試等方面。
Tcl其實包含了兩個部分:一個語言和一個函式庫。
首先,Tcl是一種簡單的腳本語言,主要使用於發布指令給予一些互交程式如文字編輯器、偵錯器和shell。它有一個簡單的語法和很強可擴充性,Tcl可以創建新的過程以增強其內建命令的能力。
其次,Tcl是一個庫包,可以被嵌入應用程序,Tcl的庫包含了一個分析器、用於執行內建命令的例程和可以使你擴充(定義新的過程)的函式庫函數。
應用程式可以產生Tcl指令並執行,指令可以由使用者產生,也可以從使用者介面的一個輸入中讀取(按鈕或選單等)。但Tcl庫收到命令後將它分解並執行內建的命令,經常會產生遞歸的呼叫。
Tcl資料型別簡單。對Tcl來說,它要處理的資料只有一種-字串。 Tcl將變數值以字串的形式進行存儲,不關心它的實際使用類型。內嵌的Tk(toolkit)圖形工具可以提供簡單又豐富的圖形功能,讓使用者可以輕鬆的創建簡單的圖形介面。
Tcl的執行是互動式的,Tcl提供了互動式指令介面,介面有兩種:tclsh和wish。 tclsh只支援Tcl指令,wish支援Tcl和Tk指令。透過互動介面,我們就可以像執行UNIX shell指令一樣,逐條指令執行,並且即時得到執行結果。
Tcl/Tk可以提供跨平台的支援。 Tcl語言可以運行在絕大多數當今流行的UNIX、WINDOWS和Macintosh等系統上,而且命令通用,只是啟動的細節有些不同。
Tcl的特性包括:
* 任何東西都是一條指令,包括文法結構(for, if等)。
* 任何事物都可以重新定義、重載。
* 所有的資料型別都可以看作字串。
* 語法規則相當簡單
* 提供事件驅動給Socket和檔案。基於時間或使用者定義的事件也可以。
* 動態的領域定義。
* 很容易用C, C ,或Java擴充。
* 解釋語言,程式碼能夠動態的改變。
* 完整的Unicode支援。
* 平台無關。 Win32, UNIX, Mac 上都可以跑。
* 和Windows的GUI緊密整合。
* 程式碼緊湊,易於維護。
TCL本身不提供物件導向的支援。但是語言本身很容易擴展到支援面向對象。許多C語言擴充都提供物件導向能力,包括XOTcl, Incr Tcl 等。另外SNIT擴充本身就是用TCL寫的。
使用最廣泛的TCL擴充是TK。 TK提供了各種OS平台下的圖形使用者介面GUI。連強大的Python語言都不單獨提供自己的GUI,而是提供介面適配到TK上。另一個流行的擴充包是Expect. Expect提供了透過終端自動執行命令的能力,例如(passwd, ftp, telnet等命令驅動的外殼).
Tcl被廣泛的用做script語言,大多數情況下,Tcl和Tk(“Tool Kit”)函式庫同時使用,Tk是一系列令Tcl易於編寫圖形使用者介面的指令和流程
Tcl的一個重要特性是它的擴充性。如果一個程式需要使用某些標準Tcl沒有提供的功能,可以使用c語言創造一些新的Tcl指令,並且很容易的融合進去。正是由於Tcl易於擴展,許多人為它編寫了擴展包,並在網路上共享。
Tcl和其他程式語言例如c不同,它是一種解釋語言而非編譯語言。 Tcl程式由一系列Tcl命令組成,在運行時由Tcl解釋器解釋運行。解釋運行的一個優點是它可以自己為自己產生Tcl script。
Tcl的絕大多數輸入/輸出是透過puts和gets做到的。 Puts指令顯示在console上,gets指令從console輸入上取得數據,並儲存在某個變數中。
相關推薦:《Linux影片教學》
以上是linux tcl是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!