Skip to main content

Take Command 16 - TCC Features

Although Take Command 16.0 is primarily a UI update, I did add a number of features to TCC (the console command processor) as well.

  • V16 includes an internal Lua interpreter. Lua scripts can be executed by entering the script name at the TCC prompt, or with the LUA command (see below). You can also execute Lua expressions with the @LUA variable function.
  • TCC command history now supports wildcards.
  • The TCC command history popup window now supports wildcards.
  • The TCC directory history popup window now supports wildcards.
  • The TCC popup windows can now optionally use character-mode windows instead of GUI windows. This is intended for use with server consoles that are character-mode only, or when using SSH with no GUI support; there is no benefit (and several disadvantages) in using this option for normal non-server environments.
  • The TCC popup windows now support Unicode characters in the Search edit control.
  • TCC customized filename completion will exclude extensions that are prefixed with a !.

New Internal Variables:

  • _IPADAPTER – returns the index of the current adapter.
  • _IPADAPTERS – returns the number of adapters in the system.
  • _IPARPPROXY – returns 1 if the local computer is acting as an ARP proxy.
  • _IPDNS – returns 1 if DNS is enabled for the local computer.
  • _IPDNSSERVER – returns the default DNS server for the local computer.
  • _IPROUTING – returns 1 if routing is enabled on the local computer.
  • _7UNZIP_FILES – returns the number of files extracted in the last 7UNZIP command.
  • _7UNZIP_ERRORS – returns the number of errors in the last 7UNZIP command.
  • _7ZIP_FILES – returns the number of files compressed in the last 7ZIP command.
  • _7ZIP_ERRORS – returns the number of errors in the last 7ZIP command.

Updated Variable Functions:

  • @PPID[=pid] – if the argument begins with a =, it is assumed to be a PID instead of a process name.
  • @SNAPSHOT[=pid] – if the argument begins with a =, it is assumed to be a PID instead of a window title.
  • @WINCLIENTSIZE[=pid] – if the argument begins with a =, it is assumed to be a PID instead of a window title.
  • @WINEXENAME[=pid] – if the argument begins with a =, it is assumed to be a PID instead of a window title.
  • @WINPOS[=pid] – if the argument begins with a =, it is assumed to be a PID instead of a window title.
  • @WINSIZE[=pid] – if the argument begins with a =, it is assumed to be a PID instead of a window title.
  • @WINSTATE[=pid] – if the argument begins with a =, it is assumed to be a PID instead of a window title.

New Variable Functions:

  • @FONT[n] – returns console font information.
  • @IPADDRESSN[n] – returns the IP address of the adapter at index n.
  • @IPALIASES[name] – returns the other names corresponding to the host with the specified name.
  • @IPDESC[n] – returns the description for the adapter at index n.
  • @IPDHCP[n] – returns the DHCP server for the adapter at index n.
  • @IPGATEWAY[n] – returns the gateway for the adapter at index n.
  • @IPIPV6N[n] – returns the IPv6 address of the adapter at index n.
  • @IPNAMEN[n] – returns the name of the adapter at index n.
  • @IPPHYSICAL[n] – returns the physical address of the adapter at index n.
  • @IPPORT[service] – returns the port number for the specified service.
  • @IPSERVICEALIASES[service] – returns aliases for the specified service.
  • @IPSUBNET[n] – returns the subnet of the adapter at index n.
  • @IPTYPE[n] – returns the type of adapter at index n.
  • @IPWINS[n] – returns 1 if the adapter at index n uses WINS.
  • @IPWINSSERVER[n] – returns the primary WINS Server for the adapter at index n.
  • @IPZONEID[n] – returns the IPv6 Zone ID (also known as a scope ID) for the adapter at index n. The values of the Zone ID are defined relative to the sending host.
  • @LUA[expression] – execute a Lua expression.
  • @UUID[n] – creates a UUID (same as a GUID in Windows).
  • @VERSION[filename[,separator[,start[,force]]]] – return a serially “versioned” replacement for the file name if the file already exists. This is distinct from the function of @UNIQUE[] in that it retains the entire filename and only appends a version separator character and an ascending version number to the filename. @VERSION does not create the file; it just returns the next available version name.
  • @WINTITLE[pid] – return the window title of the process with the specified PID.

Updated Commands:

ACTIVATE

If the window title argument begins with a =, it is assumed to be a PID instead of a title. (Note that this is less reliable than providing a title, as a process can have multiple top-level windows.)

DIR

/nm:x – Display a maximum of ‘x’ directory entries.

DO

/Q – like /L, but treats double quoted arguments (with embedded whitespace) as a single argument.

ESET

ESET now supports filename completion when editing aliases.

PDIR

/nm:x – Display a maximum of ‘x’ directory entries.

POSTMSG

If the window title argument begins with a =, it is assumed to be a PID instead of a title. (Note that this is less reliable than providing a title, as a process can have multiple top-level windows.)

TASKLIST

If the process name / window title argument begins with a =, it is assumed to be a PID instead of a name or title.

TPIPE

Unicode characters in the search / replace fields are now converted to UTF-8 before being processed by the Regular Expression engine.
Added log entries for size/date of ignored files.
Search/replace lists can now generate log entries (useful for debugging). Logs can optionally be output only for where replacements occurred.
Search/Replace lists now discard blank search terms and terms where the replacement is identical to the search.
Log filename now has environment variables resolved before display.
Named subexpressions created by a Split on Pattern filter are now saved as global variables for use in other filters.
Upgraded PDF component now handles more PDF document types.
/CLIPBOARD – Runs the current filter with input from and output to the clipboard.
/DUP – added an optional final argument to specify how the output should be formatted for Type=1
/INPUTBINARY=n – Determines how binary files are processed.
/INPUTDELETE=n – If 1, the input files will be deleted after processing. USE WITH CAUTION!!
/INPUTPROMPT=n – If 1, TPIPE will prompt before processing each input files.
/OUTPUTCHANGED=n
/OUTPUTMODE=n – Sets the output mode.
/OUTPUTOPEN=n – If 1, TPIPE will open each output file in its associated program upon completion.
/LINE – added optional final argument (0 or 1) to not reset the line count at the end of the file.
/OUTPUTFOLDER=folder – Set the output filter folder.
/SIMPLE – added new types:

81 – Shred file
82 – Unicode to escaped ASCII
83 – Restrict to Unicode files
84 – T-filter (process the same input in multiple ways)
85 – Convert HTML/XML entities to text

/SORT=Type,Reverse,RemoveDuplicates,StartColumn,Length – Sort files.

VIEW

New version of V.EXE.

New octal word hex format

Better recognition of UTF-8 files.

ZIP

ZIP is now 500% faster when zipping files.

New Commands:

7UNZIP – Unzip files in .7z archives. filename).

7ZIP – Zip files in .7z archives.

LUA – Invoke the internal Lua interpreter.

WAKEONLAN – send a “Wake-On-LAN” packet to the specified system (which may also be a broadcast address). This will power on the remote machine if the functionality is supported by the network card on the remote machine.)