TCC Programme de démarrage
Chaque fois que le TCC démarre, il recherche un programme nommé TCSTART. TCSTART est normalement un fichier batch (.BAT, .BTM, ou .CMD), mais il peut s'agir de n'importe quel fichier exécutable. Si vous spécifiez un chemin d'accès dans l ' option de configurationTCSTART / TCEXIT, le fichier doit se trouver dans le répertoire spécifié. Si l' option de configuration n'est pas utilisée, le programme TCSTART, s'il existe, est exécuté dans le même répertoire que votre processeur de commande. L'utilisation de TCSTART est facultative et TCC n'affichera pas de message d'erreur s'il ne trouve pas le programme. Si vous ne voulez pas utiliser de programme de démarrage, définissez le chemin TCSTART / TCEXIT dans un répertoire qui n'en a pas, ou laissez-le non spécifié, et assurez-vous qu'aucun fichier exécutable correspondant ne se trouve dans le répertoire de TCCdans le répertoire de
TCSTART est un endroit pratique pour changer la couleur ou le contenu de l'invite pour chaque session, pour enregistrer le début d'une session ou pour exécuter d'autres commandes spéciales de démarrage ou de configuration. C'est également un moyen de définir des alias, des fonctions et des variables d 'environnement. Voir la section ci-dessous sur les tuyaux, etc. concernant le changement de répertoire via TCSTART.
À l'exception de certains commutateurs d'initialisation, toute la ligne de commande de démarrage passée à TCC est disponible pour TCSTART sous forme de paramètres de fichier batch (%1, %2, etc.). Par exemple, pour faire une pause si des paramètres sont transmis, vous pouvez inclure cette commande dans TCSTART:
if %# GT 0 pause Starting %_cmdproc with parameters [%$]
Vous pouvez désactiver TCSTART et/ou TCEXIT.
Pipes, sessions / processus transitoires et TCSTART
Lorsque vous config urez le programmeTCSTART, n'oubliez pas qu'il est exécuté à chaque fois que le processeur de commandes démarre, y compris lors de l'exécution d'un pipes ou lorsqu'une copie transitoire de TCC est lancée avec l'option de démarrage/C . Par exemple, supposons que vous saisissiez une ligne de commande comme celle-ci, qui utilise un tuyau :
[c:\data] myprog | sort > out.txt
Normalement, cette commande devrait créer le fichier de sortie C:\DATA\OUT.TXT. Cependant, si votre programme TCSTARTchange de répertoire, le fichier de sortie sera écrit dans ce répertoire et non dans C:\DATA. Cela s'explique par le fait que TCC lance une deuxième copie (instance) de lui-même pour exécuter les commandes du côté droit du tuyau, et cette nouvelle copie exécute TCSTART avant de traiter les commandes du tuyau.
Lamême chose se produit si vous utilisez une session transitoire (démarrée avec l' option /C ) pour exécuter une commande individuelle, puis quitter. La session s'exécute dans le répertoire défini par TCSTART, et non dans le répertoire dans lequel elle a été lancée à l'origine (par exemple, en spécifiant un répertoire de travail dans un raccourci). Par exemple, supposons que vous configuriez un objet de bureau avec une ligne de commande comme celle-ci, qui démarre une session transitoire :
| Command: | d:\tc\tcmd.exe /c list myfile.txt |
| Working Directory: | c:\data |
Normalement, ce raccourci répertorie le fichier C:\DATA\MYFILE.TXT. Cependant, si TCSTART change le répertoire par défaut pour un répertoire différent , le raccourci recherchera MYFILE.TXT, TCC cherchera MYFILE.TXT dans ce répertoire, et non dans C:\DATA.
De même, toute modification des variables d'environnement, des alias ou d'autres paramètres de TCSTART affectera toutes les copies de TCCy compris celles utilisées pour les pipes et les sessions transitoires.
Vous pouvez contourner ces problèmes potentiels à l'aide des commandes IF ou IFF et des variables internes _PIPE et _TRANSIENT. Par exemple, pour ignorer tout le traitement TCSTART lors de l'exécution dans un tube ou dans une session transitoire, vous pouvez utiliser une commande comme celle-ci au début de TCSTART:
if %_pipe != 0 .or. %_transient != 0 quit
TCC Programme de terminaison
Chaque fois qu'une TCC se termine, elle recherche un programme nommé TCEXIT. TCEXIT est normalement un fichier batch (.BAT, .BTM ou .CMD), mais il peut s'agir de n'importe quel fichier exécutable . L'emplacement de ce programme facultatif est déterminé par la même règle que l'emplacement du programme TCSTART pour la session et n'est pas nécessaire dans la plupart des cas. Cependant, c'est un endroit pratique pour placer des commandes permettant de sauvegarder des informations d'une session à l'autre, telles qu'une liste d'historique (des commandes) avant les sorties, ou pour enregistrer la fin d'une session. TCC ou pour signaler la fin de la session .Vous pouvez utiliser un programme de fin de session même si vous n'avez pas de programme de démarrage.
Aucun paramètre n'est transmis au programme de fin de session.