If you use SHRALIAS, you do not need to explicitly save global tables. From V14 HELP -> SHRALIAS:
"If you have an environment variable named SHRALIAS_SAVE_PATH, SHRALIAS will save the alias, history, dirhistory, and function lists to the path specified by SHRALIAS_SAVE_PATH when SHRALIAS exits. The files will be saved in Unicode format as alias.sav, history.sav, dirhistory.sav, and function.sav."
SHRALIAS.EXE exits if any instance of TCC issues the SHRALIAS /U command, or when you log out (including shutdown, power off, Windows restart [reboot]).
Should you desire the tables to be saved in ASCII format, Vince Fatica has an alternate SHRALIAS.EXE. I use its 32b version on WinXP, and a single copy of his SHRALIAS.EXE is hardlinked into the installation directories of 4NT V6, V7, V8, and TCMD V9, V10, V11, V12, V13 and V14. This allows me to share my global tables between all 4NT and TCC instances.
Furthermore, I have a shortcut in my "%userprofile\Start Menu\Programs\Startup", executed each time I log into my account, which starts a non-transient instance of TCC without using TCSTART.BTM or TCEXIT.BTM (command-line option /ISX), and a nearly empty .INI file which just specifies global history and directory history sizes. The batch file run by the startup command does nothing if SHRALIAS.EXE is already running (value of internal variable _SHRALIAS is 1); defines SHRALIAS_SAVE_PATH, loads all tables from their saved version - as you do for directory history only in TCStart.btm, starts SHRALIAS.EXE. It can also perform any other user- and platform-dependent startup (none at present). The batch file ends with the EXIT command, which terminates the TCC instance. I had considered, but not implemented initiating various monitor commands (e.g., USBMONITOR). If I did that, the TCC instance would need to remain active but dormant, e.g., by using "DELAY UNTIL 2030-12-31 23:59"...