TCL特殊變量

在TCL,我們劃分一些變量作爲特殊變量,他們有一個預定義的用法/功能。特殊變量列表如下。

特殊變量

描述

argc

指命令行參數的個數。

argv

指包含命令行參數的列表。

argv0

是指被解釋的文件或由調用腳本的名稱的文件名。

env

用於表示是環境變量數組元素。

errorCode

爲最後的Tcl錯誤的錯誤代碼。

errorInfo

爲最後Tcl錯誤的堆棧跟蹤信息。

tcl_interactive

分別將其設置爲1和0交互和非交互模式之間切換。

tcl_library

用於設置的標準Tcl庫的位置。

tcl_pkgPath

提供一般都安裝包的目錄列表。

tcl_patchLevel

指的是Tcl解釋目前的補丁級別。

tcl_platform

用於表示使用對象,包括byteOrder, machine, osVersion平臺和操作系統數組元素。

tcl_precision

指的是精度,即位數轉換爲浮點數時,字符串保留。默認值是12。

tcl_prompt1

指的是主提示符。

tcl_prompt2

指無效的命令二次提示。

tcl_rcFileName

爲用戶提供了具體的啓動文件。

tcl_traceCompile

用於控制字節碼編譯的跟蹤。用0表示無輸出,1爲概要和2爲詳細。

tcl_traceExec

用於控制執行的字節碼的跟蹤。用0表示無輸出,1爲概要和2爲詳細。

tcl_version

返回Tcl解釋器的最新版本。

上述特殊變量都有各自的 Tcl 解釋特殊的含義。

使用Tcl的特殊變量的例子

讓我們來看看一些例子特殊變量。

Tcl 版本

#!/usr/bin/tclsh

puts $tcl_version

當運行程序,會得到一個類似的輸出,如下圖所示。

8.5

TCL環境路徑

#!/usr/bin/tclsh

puts $env(PATH)

當運行程序,會得到一個類似的輸出,如下圖所示。

/web/com/GNUstep/Tools:/usr/GNUstep/Local/Tools:/usr/GNUstep/System/Tools:/usr/local/sml/bin:/usr/local/flex/bin:/usr/local/gcc-4.8.1/bin:/usr/share/java:.:/usr/share/java:/usr/lib/jvm/java/lib:/usr/lib/jvm/java/jre/lib:/usr/local/bin:/usr/local/mozart/bin:/usr/local/go/bin:/usr/local/factor/:/usr/local/groovy-2.1.7/bin:/opt/Pawn/bin/:/usr/local/icon-v950/bin:/usr/local/lib/mono/4.0:/usr/lib64/qtC.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/Pawn/bin:/usr/local/dart/bin:/usr/local/julia/usr/bin:/usr/local/julia:/usr/local/scriptbasic/bin

TCL程序包路徑

#!/usr/bin/tclsh

puts $tcl_pkgPath

當運行程序,會得到一個類似的輸出,如下圖所示。

/usr/lib64/tcl8.5 /usr/share/tcl8.5 /usr/lib64/tk8.5 /usr/share/tk8.5

TCL庫

#!/usr/bin/tclsh

puts $tcl_library

當運行程序,會得到一個類似的輸出,如下圖所示。

/usr/share/tcl8.5

TCL補丁級別

#!/usr/bin/tclsh

puts $tcl_patchLevel

當運行程序,會得到一個類似的輸出,如下圖所示。

8.5.7

TCL精度

#!/usr/bin/tclsh

puts $tcl_precision

當運行程序,會得到一個類似的輸出,如下圖所示。

0

TCL啓動文件

#!/usr/bin/tclsh

puts $tcl_rcFileName

當運行程序,會得到一個相似的輸出,如下圖所示。

~/.tclshrc