---
name: "rename"
section: "n"
platform: "macos"
package: "tcl"
version: "152"
release: "macOS 26.5"
platforms: ["linux", "macos"]
url: "https://new.carta.tech/rename/n"
---

# rename(n)

Rename or delete a command

## NAME

rename - Rename or delete a command

## SYNOPSIS

**rename** *oldName newName*

## DESCRIPTION

Rename the command that used to be called *oldName* so that it is now called *newName*. If *newName* is an empty string then *oldName* is deleted. *oldName* and *newName* may include namespace qualifiers (names of containing namespaces). If a command is renamed into a different namespace, future invocations of it will execute in the new namespace. The **rename** command returns an empty string as result.

## EXAMPLE

The **rename** command can be used to wrap the standard Tcl commands with your own monitoring machinery.  For example, you might wish to count how often the **source** command is called: **rename** ::source ::theRealSource set sourceCount 0 proc ::source args {\
     global sourceCount\
     puts "called source for the \[incr sourceCount\]'th time"\
     uplevel 1 ::theRealSource $args }

## SEE ALSO

[namespace(n)](/namespace/n.md), [proc(n)](/proc/n.md)

## KEYWORDS

command, delete, namespace, rename
