linux tcl是什么

linux中,tcl全稱“Tool Command Language”,意思為“工具命令語言”,是一種基于字符串的命令語言,是一種解釋性語言;TCL常被用于快速原型開發,腳本編程,GUI和測試等方面。

linux tcl是什么

本教程操作環境: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視頻教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享