Tcl에서는 info
명령이 다양한 서브 명령어들과 함께 사용되어 스크립트 실행 환경에 대한 정보를 제공합니다. 아래는 주요 info
서브 명령어들의 목록과 간단한 설명입니다:
info
명령의 주요 서브 명령어
info vars
- 현재 정의된 변수 목록을 반환합니다.
- 특정 패턴을 지정하면 해당 패턴에 맞는 변수 이름만 반환됩니다.
- 예:
info vars info vars myVar*
info commands
- 현재 정의된 명령어(커맨드) 목록을 반환합니다.
- 특정 패턴을 지정하면 해당 패턴에 맞는 명령어 이름만 반환됩니다.
- 예:
info commands info commands myCommand*
info procs
- 현재 정의된 프로시저(함수) 목록을 반환합니다.
- 특정 패턴을 지정하면 해당 패턴에 맞는 프로시저만 반환됩니다.
- 예:
info procs info procs myProc*
info globals
- 현재 정의된 전역 변수 목록을 반환합니다.
- 특정 패턴을 지정하면 해당 패턴에 맞는 전역 변수만 반환됩니다.
- 예:
info globals info globals globalVar*
info locals
- 현재 로컬 변수 목록을 반환합니다.
- 특정 패턴을 지정하면 해당 패턴에 맞는 로컬 변수만 반환됩니다.
- 예:
info locals info locals localVar*
info exists
- 특정 변수가 정의되어 있는지 여부를 반환합니다.
- 반환값:
1
(존재) 또는0
(미존재). - 예:
if {[info exists myVar]} { puts "Variable exists" }
info nameofexecutable
- 현재 실행 중인 Tcl 인터프리터의 실행 파일 경로를 반환합니다.
- 예:
puts [info nameofexecutable]
info script
- 현재 실행 중인 스크립트 파일의 파일명을 반환합니다.
- 예:
puts [info script]
info level
- 현재 실행 중인 스택의 레벨을 반환합니다.
- 특정 스택 레벨의 정보도 확인할 수 있습니다.
- 예:
puts [info level] puts [info level 0]
info args
- 특정 프로시저의 매개변수 목록을 반환합니다.
- 예:
proc myProc {arg1 arg2} {} puts [info args myProc]
info body
- 특정 프로시저의 본문(코드)을 반환합니다.
- 예:
proc myProc {arg1 arg2} { puts $arg1 } puts [info body myProc]
info default
- 특정 프로시저 매개변수의 기본값을 반환합니다.
- 예:
proc myProc {arg1 {arg2 "default"}} {} puts [info default myProc arg2 defaultValue]
info complete
- 주어진 코드가 완전한 명령인지 확인합니다.
- 반환값:
1
(완전) 또는0
(불완전). - 예:
puts [info complete "set a 1"] puts [info complete "if {1} {"]
info hostname
- 현재 시스템의 호스트명을 반환합니다.
- 예:
puts [info hostname]
info patchlevel
- 현재 Tcl 인터프리터의 버전 정보를 반환합니다.
- 예:
puts [info patchlevel]
info tclversion
- 현재 Tcl의 버전 번호를 반환합니다.
- 예:
puts [info tclversion]
info library
- Tcl 표준 라이브러리가 설치된 디렉토리 경로를 반환합니다.
- 예:
puts [info library]
info loaded
- 현재 인터프리터에 로드된 확장 모듈의 목록을 반환합니다.
- 예:
puts [info loaded]
info timezone
- 현재 시스템의 시간대 정보를 반환합니다.
- 예:
puts [info timezone]
info channels
- 현재 열린 I/O 채널 목록을 반환합니다.
- 예:
puts [info channels]
요약
Tcl의 info
명령은 다양한 실행 환경 정보를 확인할 수 있는 강력한 도구입니다. 주로 사용되는 info vars
, info procs
, info exists
외에도 환경, 실행 파일, 버전, 채널 정보 등 다양한 정보를 제공합니다. 필요에 따라 적합한 서브 명령어를 선택하여 사용하면 됩니다. 😊
'IT > ASIC | FPGA' 카테고리의 다른 글
WaveDrom - waveform 그리는 스마트 툴 (0) | 2024.12.18 |
---|---|
Chiplet 칩릿 or 칩렛 과 UCIe (2) | 2024.11.07 |
타이밍 기초 - 디자인 요소 common design objects (0) | 2024.10.28 |
타이밍 기초 - DES0001 vs DES0004 Register clock pin (1) | 2024.10.28 |
타이밍 기초 - Clock clock1 is missing an asynchronous definition CGR_0004 (0) | 2024.10.28 |