Chapter 03. Tcl-Special Variables

Tcl에서 변수 중 일부는 특수 변수로 분류되어 있으며, 개발자가 사용할 수있습니다.
이러한 specials 변수 목록은 다음과 같습니다.

Special Varibale Description
argc 명령줄에 대한 인수의 갯수를 의미합니다.
argv 명령줄 인수가 포함된 리스트를 참조합니다.
argv0 스크립트 파일이름 자체를 참조합니다.
env 환경변수의 배열을 표시합니다.
errorCode Tcl에서 발생한 마지막 에러코드를 참조합니다.
errorInfo Tcl에서 발생한 마지막 에러에 대한 정보를 참조합니다.
tcl_interactive 대화형과 비대화형 모드를 전환하는데 사용됩니다.
tcl_library 표준 Tcl 라이브러리의 위치를 설정하는데 사용됩니다.
tcl_pkgPath 외부패키지가 위치하는 디렉토리의 경로 목록을 제공합니다.
tcl_patchLevel 현재 해석기(Interpreter)의 패치레벨을 표시합니다.
tcl_platform 해당 플랫폼에 대한 정보를 표시합니다. 바이트순서, 플랫폼, 운영체제버전 등에 대한 여러가지 정보를 참조합니다.
tcl_precision 부동소수점에 대한 정확도 정보를 제공합니다. 기본적으로 12자리에 대한 정확도를 제공합니다.
tcl_prompt1 해석기(Interpreter)의 기본적인 프롬프트값을 설정합니다.
tcl_prompt2 해석기의 이차적인 프롬프트값을 설정합니다.
tcl_rcFileName 해석기가 실행될때 자동으로 수행되는 시작파일을 지정합니다
tcl_traceCompile 컴파일된 바이트코드를 추적하는데 사용됩니다. 0을 설정하면 출력이 없으며, 1값은 요약, 2값은 세부적인 사항을 표시
tcl_traceExec 상기와 동일합니다.
tcl_version 현재 Tcl 해석기의 버전정보를 표시합니다.

위의 특수 변수들은 Tcl 인터프리터에서 특별한 의미가 있습니다.

Tcl 특수 변수 사용 예제


특수 변수에 대한 몇 가지 예제를 살펴 보겠습니다.

Tcl Version

#!/usr/bin/tclsh

puts $tcl_version

상기의 프로그램을 실행하면 다음과 같이 표시됩니다. (설치된 버전마다 다르게 표시됩니다.)

8.6.6

Tcl Environment Path

#!/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/loca
l/julia/usr/bin:/usr/local/julia:/usr/local/scriptbasic/bin

Tcl Package Path

#!/usr/bin/tclsh

puts $tcl_pkgPath

상기의 프로그램을 실행하면 다음과 같이 표시됩니다. (설치된 버전마다 다르게 표시됩니다.)

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

Tcl Library

#!/usr/bin/tclsh

puts $tcl_library

상기의 프로그램을 실행하면 다음과 같이 표시됩니다. (설치된 버전마다 다르게 표시됩니다.)

/usr/share/tcl8.5

Tcl Patch Level

#!/usr/bin/tclsh

puts $tcl_patchlevel

상기의 프로그램을 실행하면 다음과 같이 표시됩니다. (설치된 버전마다 다르게 표시됩니다.)

8.6.6

Tcl Precision

#!/usr/bin/tclsh

puts $tcl_precision

상기의 프로그램을 실행하면 다음과 같이 표시됩니다. (설치된 버전마다 다르게 표시됩니다.)

0

Tcl Startup File

#!/usr/bin/tclsh

puts $tcl_rcFileName

상기의 프로그램을 실행하면 다음과 같이 표시됩니다. (설치된 버전마다 다르게 표시됩니다.)

~/.tclshrc

results matching ""

    No results matching ""