本コマンドによってある演算か操作が行なわれるときに、引数によってTclコマンドが実行されます。variableです。よって与えられた方法のどれかで変更されるとき、commandコマンドを実行するための手配をします。プロシージャで使われる通常のnamespace命名規則に従います。引数コマンドが存在しない場合はエラーが発生します。監視する操作を示す次のアイテムの1以上を含むリストです。改名されるときにcommandを呼び出します。空の文字列へ改名する場合は削除とみなしますのでrenameでトレースできません。削除されるとき、commandを呼び出します。よってコマンド名を空の文字列に改名することで明白に削除されます。インタープリタが削除されるとき、コマンドも同時に削除されますが、この場合トレースを実行させるインタープリタがないのでトレースは行いません。rename〜、もしくはdeleteのいずれかです。トレースオペレーションはコマンドが削除されるのを阻止するために使われることができません。そのトレースが完了すれば、Tclはコマンドを常に削除するでしょう。再帰的に改名する、及び削除することによって同じタイプの更なるトレースは評価されなくなります。このように、コマンドをそれ自身が改名するような、削除するトレースを削除する、及び改名するトレースは、更なるトレース評価を引き起こさなくなります。よって与えられた方法のうちの1つで修正されるときはいつでも、実行するcommandを手配します。プロシージャによって使われる通常のnamespace解決規則を用いて解決されます。コマンドが存在しない場合、エラーとなるでしょう。実行されるときはいつでも、現在の実行が行われる前にcommandを呼び出します。実行されるときはいつでも、現在の実行が行われた後でcommandを呼び出します。enterstepプロシージャ名の中で実行される全てのtclコマンドのために、現在の実行が行われる前にcommandを呼び出します。'がある場合、puts"Hello"が実行される前にenterstepトレースが起動されます。enterstepトレースをcommandに置くことはエラーに帰着せず、単に無視することになります。leavestepプロシージャ名の中で実行される全てのtclコマンドのために、現在の実行が行われた後でcommandを呼び出します。leavestepトレースをcommandに置くことはエラーに帰着せず、単に無視することになります。次のように、現在のコマンドはcommandに付加されます。:これはenter及びenterstepオペレーションのために行われます。それらの十分に拡張されたフォームにおける全ての引数を含めて、完全な現在の命令の実行を与えます。Opはどのようなオペレーションがコマンド実行に関して行われているかを示し、そして、上で示したようにenter、またはenterstepのうちのいずれかです。トレースオペレーションは、問題のコマンドを削除することによって、そのコマンドが実行をとめることができます。'エラーが発生するときもです。これらの十分に拡張されたフォームにおける全ての引数を含めて、完全な現在の命令の実行を与えます。codeは、結果ストリングをその実行の結果コード、及びresultに与えます。Opはどのようなオペレーションがコマンド実行に関して行われているかを示し、そして上で示したように、leave、またはleavestepのうちのいずれかです。つながることができることに注意してください。command実行する時、それが起動されたコードと同じコンテキストにおいて、トレースされたオペレーションのようにプロシージャから実行された場合、そのcommandは、プロシージャのコードと同じローカル変数へのアクセスを持っているます。このコンテキストは、そのトレースが作成されたコンテキストとは異なるかもしれません。呼び出すならば、あるいはそれがトレース演算に起動されたコードの局所変数にアクセスすることを望むならば、そのプロシージャはupvar、またはuplevelを使わなければならななりません。関するトレースは一時的に無効にされます。実行することを可能にします。commandボディを実行している間にエラーが発生した場合、その後、command名前のすべては、そのエラーを返すことになります。置かれるとき、enter及び、enterstepオペレーションのためにトレースされたコマンドは、トレースが本来、どのように作成されてきたか逆の順番に呼び出されます。leave、及びleavestepオペレーションのために、トレースされたコマンドは、作成されたオリジナルの順番で呼び出されます。ために定義されません。よって与えられた方法のうちの1つでアクセスされるときは、実行されさせるcommandを手配します。挿入語句を入れられたインデックスなしで、名前は単に配列の名前であるかもしれません)。全ての配列を参照する場合、配列のあらゆるエレメントが操作されるときはいつでも、commandが呼び出されます。その変数が存在しないならば、作成されるますが、しかし、値を与えられません。existではなくnamespaceで参照されます。どちらのオペレーションが関心であるかを示し、そして、次のアイテムの1以上のリストです。arrayコマンドによってアクセスされます、もしくは修正されるときはいつでも、commandを呼び出します。arrayコマンド経由のアクセスは、トレースしません。read変数が読まれるときはいつでも、commandを呼び出します。write変数が書かれるときはいつでも、commandを呼び出します。unset変数が設定されないときはいつでも、commandを呼び出します。インタープリタが削除されるとき、変数は同じくアンセットされます、しかし、実行するインタープリタがないので、トレースは行使されません。トレーストリガの現在のコマンドが次のとおりである場合、3つの引数は、commandに付加されます。その変数がその時スカラであるならば、name1は変数の名前を与え、そしてname2は空のストリングになります。その変数がその時配列要素であるならば、name1はアレイの名前を与え、そしてname2はインデックスをアレイに与えます。全体のアレイが削除されつつあり、単一のエレメントというよりはむしろ、そのトレースが全体のアレイ上で登録されたならば、name1はアレイ名前を与え、そしてname2は空のストリングになります。して必ずしも同じであるとは限りません。下で変数を参照することを可能にします。unsetのいずれかの、どのようなオペレーションが変数に関して行われつつあるかを示します。それが起動されたコードと同じコンテキストにおいて、トレースされたオペレーションのcommand実行する場合、その変数がTclプロシージャの一部としてアクセスされたなら、commandはプロシージャのコードと同じローカル変数へのアクセス権を持っています。このコンテキストは、そのトレースが作成されたコンテキストとは異なる場合もあります。uplevelを使わなければなりません。トレースを変数に置いたものと、name1が必ずしも同様であるとは限りません。upvarコマンドによって定義された変数によって行われるならば、差異は発生し得ます。影響を及ぼすために、変数を修正します。