info(3tcl)

NAME
info - 返回关于 Tcl 解释器状态的信息

总览 SYNOPSIS
info option ?arg arg ...?

描述 DESCRIPTION

这个命令提供关于 Tcl 解释器的各种内部信息。合法的option (可以是缩写)有:

info args procname
    返回一个列表，依次包含给过程procname 的参数们的名字。Procname 必须是一个 Tcl 命令的名字。

info body procname
    返回过程 procname 的过程体。Procname 必须是一个Tcl 命令的名字。

info cmdcount
    返回在这个解释器中已经被调用的命令的总数的统计。

info commands ?pattern?
    如果未指定 pattern ，返回在当前名字空间中所有 Tcl 命令的名字的一个列表，包括用 C 写成的内置命令和使用 proc命令定义的命令过程。如果指定了 pattern，只返回匹配 pattern 的那些名字。使用与 string match相同的规则确定匹配。pattern 可以是象 Foo::print* 这样的一个限定的(qualified)名字。这样，可以使用由 ::分隔的名字空间的名字序列来指定一个特定的名字空间，并可以用匹配后面特定字符的模式来指定在这个名字空间中的一系列命令。如果是 pattern是一个限定的名字，命令名字的结果列表中的每个元素都被指定名字空间的名字所限定。

info complete command
    如果 command 是一个完整的 Tcl 命令则返回 1，完整的意思是没有不闭合的引号、花括号、方括号或数组元素名，如果命令表现为不完整则返回 0。典型的，这个命令在面向行的输入环境中被用来允许用户键入分开(span)成多行的命令；如果命令不完整，脚本可以延期求值，直到键入增补的行完成这个命令。

info default procname arg varname
    Procname 必须是一个 Tcl 命令过程的名字而 arg 必须是给这个过程的一个参数的名字。如果 arg 没有缺省值则命令返回 0。否则它返回 1 并把这个缺省值放置到变量 varname 中。

info exists varName
    如果在当前上下文中存在叫 varName 的变量(可以是一个全局变量或局部变量)，并已经通过给它一个值而被定义则返回 1，否则返回 0

info globals ?pattern?
    如果未指定 pattern ，返回所有当前定义的全局变量的名字的一个列表。全局变量是在全局名字空间中的变量。如果指定了 pattern ，只返回匹配 pattern 的那些名字。使用与 string match 相同的规则确定匹配。

info hostname
    返回在其上执行这个调用的那个计算机的名字。

info level ?number?
    如果未指定 number，这个命令返回给出调用过程的栈层次的一个数，如果在顶层调用这个名字则返回 0。如果指定了 number ，则结果是由在栈上 number 层调用的过程的名字和值组成的一个列表。如果 number 是正数则选择的是一个特定的栈层次(1 参照最顶层活跃过程，2 是它调用的过程，以此类推)；否则给出的是相对当前层次的一个相对层次(0 参照当前过程，-1 是它的调用者，以此类推)。关于栈层次的详细信息参见 uplevel 命令。

info library
    返回在其中存储标准 Tcl 脚本的库目录的名字。这实际上是 tcl_library 变量的值并可通过设置 tcl_library 来变更。详情参见 tclvars 手册条目。

info loaded ?interp?
    返回描述用 load 命令装载到 interp 中的所有包的一个列表。每个列表元素都是有两元素的一个子列表，它们是从其中装载包的文件的名字和包的名字。对于静态装载包这个文件名字是一个空串。如果省略了 interp 则返回在进程中所有的解释器中装载的包的信息。要得到当前解释器中的包的一个列表，指定 interp参数为一个空串。

info locals ?pattern?
    如果未指定 pattern，返回所有当前定义的局部变量名字的一个列表，包括给当前过程的参数。 用 global 和 upvar命令定义的参数将不返回。如果指定了 pattern ，只返回匹配 pattern 的那些名字。使用与 string match 相同的规则确定匹配。

info nameofexecutable
    返回完整的二进制文件的路径名，从这个文件中调用了应用(程序)。如果Tcl 不能标识这个文件，则返回一个空串。

info patchlevel
    返回全局变量 tcl_patchLevel 的值；详情参见 tclvars 手册条目。

info procs ?pattern?
    如果未指定 pattern ，返回在当前的名字空间中的所有 Tcl 命令过程的名字的一个列表。如果指定了 pattern，在返回在当前名字空间中匹配 pattern 的过程名字。使用与 string match 相同的规则确定匹配。

info script
    如果当前正在求值一个 Tcl 脚本文件(例如，有一个 Tcl_EvalFile 调用处于活跃或有一个对 source 命令的活跃调用)，则这个命令返回被处理的最内部(innermost)文件的名字。否则这个命令返回一个空串。

info sharedlibextension
    返回在这个平台上包含共享库的文件使用的扩展名(例如，在Solaris 下是 .so)。如果在这个平台上不支持共享库则返回一个空串。

info tclversion
    返回全局变量 tcl_version 的值；详情参见 tclvars手册条目。

info vars ?pattern?
    如果未指定 pattern，则返回所有当前可见的变量的名字的一个列表。包括局部变量和当前可见的全局变量。如果指定了 pattern，只返回匹配 pattern 的那些名字。使用与 string match 相同的规则确定匹配。pattern 可以是象 Foo::print* 这样的一个限定的(qualified)名字。这样，可以使用由 :: 分隔的名字空间的名字序列来指定一个特定的名字空间，并可以用匹配后面特定字符的模式来指定在这个名字空间中的一系列命令。如果是 pattern是一个限定的名字，命令名字的结果列表中的每个元素都被指定名字空间的名字所限定。

关键字 KEYWORDS
command, information, interpreter, level, namespace, procedure, variable

[中文版维护人]
寒蝉退士

[中文版最新更新]
2001/09/28

《中国 Linux 论坛 man 手册页翻译计划》:
http://cmpp.linuxforum.net