Setgo for Windows

“setgo” is a command-line utility that allows the user to change the current directory using a short easy-to-remember name. Each “go” command is prefixed with a dash “-” so all “go” commands are unique and do not conflict with existing commands.

“setgo” creates and maintains any number of “go” commands for each user on a supported operating system. This allows each user to have “go” commands that meet their individual needs.

This implementation of Setgo is a 32-bit program written for the Windows operating system. The original version of setgo was written in 1991 and the shell script has been ported to a wide variety of UNIX-based operating systems including Solaris, HP-UX, IBM AIX, Redhat, Fedora, Ubuntu, and CentOS. See Setgo for Linux.

How setgo Works

The setgo utility uses an environment symbol SETGO that specifies a directory to store the Go batch files that change the current directory. This directory must be added to the system PATH so the Go batch files can be found from a command line.

Because no Windows command begins with a dash “-” each setgo command uses that character as a prefix to make the “go” command unique.


The setgo utility is provided for free and “as is” with no guarantee or warranty expressed or implied. If you break it you own both parts.

Pass it around.


The setgo utility is 32-bit Windows program that also runs well on 64-bit systems. It may be downloaded from GitHub at:


Place the downloaded file in the desired directory. If the Zip was downloaded simply unpack the contents to a directory.

Add the following environment symbols via Control Panel, System, Advanced system settings, the Advanced tab, then click the Environment Variables button:

SETGO = The path to a directory where Go commands will be kept.
SETGOEDITOR = Optional path to the EXE of the desired editor for the -e option.

Be sure to add the path of the SETGO environment symbol to the system PATH, for example:


There is no Windows installation, short-cut, or configuration procedure. The setgo utility is just a simple command-line tool.

setgo . — Create new go command for current directory.
setgo work — Create new g” command named -work.
setgo -f — find all go commands with the current directory.
setgo -f work — find all go commands contain ‘work’.
setgo -d work — delete existing go command -work.
setgo -e . — edit the go command for the current directory.
-work — change to the work location.

For complete usage information, run:

setgo –help

This entry was posted in Software. Bookmark the permalink.