Archivos ejecutables y búsquedas de archivos

Cuándo TCC no puede encontrar un nombre de comando interno coincidente, intenta encontrar un archivo ejecutable cuyo nombre coincida con el nombre del comando. (Los archivos ejecutables suelen ser aquellos con una . EXE extensión.)

 

If TCC no puede encontrar un programa ejecutable para ejecutar, a continuación busca uno que coincida archivo por lotes nombre. TCC busca primero un .BTM archivo, luego por un .CMD archivo, luego por un .BAT archivo, y finalmente por un .REX, .REXX,.PL, .PY, .RB o .TCL archivo (si REXX, Perl, Python, Ruby y/o Tcl están habilitados).

 

Puede cambiar la lista de extensiones que se consideran "ejecutables" y el orden en el que se buscan, con el PATHEXT variable de entorno y las variables relacionadas RutaExt opción de configuración. PATHEXT se admite por motivos de compatibilidad, pero generalmente no debe utilizarse como sustituto de extensiones ejecutables, que son más flexibles.

 

Nota: Si falla la búsqueda de un programa externo o un archivo por lotes, TCC comprueba si el nombre del comando coincide con el nombre de un archivo con un extensión ejecutable. Si se encuentra una extensión ejecutable, TCC ejecuta el programa especificado cuando se definió la asociación. Si no se encuentra ninguna extensión ejecutable, TCC buscará una asociación directa para la extensión en el registro e insertará la cadena asociada (generalmente el nombre de una aplicación) al principio de la línea de comando, luego llamará a Windows Proceso de creación API para ejecutar ese comando. Si la llamada CreateProcess falla o si no se encontró ninguna asociación en el registro, TCC llama al ShellExec API de Windows. TCC no tiene control sobre qué acción realizarán las API de Windows anteriores cuando se les presente un nombre de archivo. Si le preocupa lo que Windows podría hacer con una extensión "desconocida", cree una extensión ejecutable específica.

 

TCC Primero realiza esta búsqueda (de un programa ejecutable, un archivo por lotes o un archivo con una extensión ejecutable) en el directorio actual. Si esa búsqueda falla, repiten la búsqueda en cada directorio de su búsqueda. camino.

 

La ruta de búsqueda es una lista de directorios que TCC (y algunas aplicaciones) buscan archivos ejecutables. Por ejemplo, si quisieras TCC para buscar archivos ejecutables en el directorio raíz de la unidad C:, el subdirectorio \WINUTIL de la unidad C: y el directorio \UTIL de la unidad D:, su ruta de búsqueda se vería así:

 

RUTA=C:\;C:\WINUTIL;D:\UTIL

 

Los nombres de los directorios en la ruta de búsqueda están separados por punto y coma.

 

Puede crear o ver la ruta de búsqueda con el TRAYECTORIA dominio. Puedes usar el ESET comando para editar la ruta. Muchos programas también utilizan la ruta de búsqueda para encontrar sus propios archivos. La ruta de búsqueda se almacena en el entorno con el nombre PATH.

 

Take Command también busca el \VENTANAS\SISTEMA32 directorio seguido del \ VENTANAS directorio. (Los nombres de directorio reales pueden ser diferentes en su sistema. TCC determinará los nombres correctos para los directorios "Windows" y "Sistema Windows" y los utilizará).  Esta parte del procedimiento de búsqueda se ajusta a las secuencias de búsqueda tradicionales utilizadas en cada sistema operativo Windows.

 

Nota: Si el archivo no se encuentra en la RUTA, TCC luego comprueba si hay un correspondiente Rutas de aplicación entrada en el registro de Windows (ya sea en el árbol HKCU o HKLM). Rutas de aplicación Algunas aplicaciones crean entradas durante el proceso de instalación.

 

Recuerda, TCC siempre busca un archivo ejecutable (o un archivo con una extensión ejecutable o una asociación de archivos de Windows) en el archivo actual subdirectorio, luego en Windows directorios si corresponde (ver arriba), luego en cada directorio en la búsqueda camino, y luego en el Rutas de aplicación área del registro. (Puede cambiar el orden de búsqueda para que no se busque primero en el directorio actual; consulte la TRAYECTORIA comando para más detalles.)

 

Si incluye una extensión como parte del nombre del comando, TCC sólo busca un archivo con esa extensión. De manera similar, si incluye una ruta como parte del nombre del comando, TCC buscará solo en el directorio que usted especificó e ignorará la búsqueda habitual del directorio actual y la RUTA.

 

Si el nombre de su comando incluye una ruta, los elementos deben estar separados con barras invertidas (p.ej c:\wp\wp). Si está acostumbrado a la sintaxis de Linux donde se utilizan barras diagonales en las rutas de comando y desea TCC Para reconocer este enfoque, puede configurar el Rutas Unix/Linux opción de configuración.

 

Una vez encontrado el archivo, TCC lo ejecuta en función de su extensión. . EXE Los archivos se ejecutan pasando sus nombres al sistema operativo. .BTM, .BAT, y (si corresponde) .CMD Los archivos son ejecutados por TCC, que lee cada línea del archivo como un nuevo comando. Los archivos con extensiones ejecutables se ejecutan iniciando la aplicación asociada y pasando el nombre del archivo en la línea de comando.

 

Si especifica un nombre de archivo que incluye la extensión, y el archivo existe en el directorio actual (o especifica una ruta), pero el archivo no tiene una extensión conocida TCC (.EXE, .BTM, .BAT, .CMD, o una extensión ejecutable), luego el nombre del archivo se pasará a Windows para verificar las asociaciones de archivos definidas en el registro de Windows. Esto le permite ejecutar cualquier archivo cuya extensión sea conocida por Windows, simplemente escribiendo su nombre. Por ejemplo, si no tiene ninguna extensión ejecutable definida para .PSP archivos, pero esta es una extensión conocida por Windows, cuando se le solicite, simplemente puede ingresar un comando como este:

 

[c:\gráficos] imagen1.psp

 

y Take Command solicitará que Windows inicie la aplicación por usted. Ver Asociaciones de archivos de Windows para obtener detalles adicionales sobre cómo controlar las asociaciones de archivos de Windows en TCC.

 

La siguiente tabla resume las posibles opciones de búsqueda (el término "búsqueda estándar" se refiere a la búsqueda del directorio actual, los directorios de Windows y cada directorio en la ruta de búsqueda):

 

ComandoTCC Secuencia de búsqueda
WPBusque cualquier archivo ejecutable cuyo nombre base sea WP.
WP.EXEBusque WP.EXE; No encontrará archivos con otras extensiones.
C:\WP\WPmira en el C:\WP directorio para cualquier archivo ejecutable cuyo nombre base sea WP. No comprueba los directorios de búsqueda estándar.
C:\WP\WP.EXEBusca solo el archivo C:\WP\WP.EXE.
LABORATORIO.DOCBusque LABORATORIO.DOC, Si . DOC se define como una extensión ejecutable. Ejecuta la aplicación asociada si se encuentra el archivo. Si . DOC no es una extensión ejecutable, pasa el nombre a Windows para buscar una asociación de archivos de Windows.
C:\LI\LAB.DOCBusca solo el archivo C:\LI\LAB.DOC, y solo si . DOC se define como una extensión ejecutable. Ejecuta la aplicación asociada si se encuentra el archivo. Si . DOC no es una extensión ejecutable, pasa el nombre a Windows para buscar una asociación de archivos de Windows.

 

Si el primer argumento en una línea de comando tiene el formato "env_var=value opciones de comando" (y env_var=value no coincide con un comando externo), entonces TCC establecerá la variable de entorno especificada en el valor, ejecutará el comando y luego eliminará la variable.

 

If TCC no puede encontrar un archivo ejecutable, un programa por lotes o un archivo con una extensión ejecutable o una asociación de archivos de Windows en el directorio actual, un directorio en la ruta de búsqueda o el directorio que especificó en el comando, luego busca un alias llamado DESCONOCIDO_CMD (Véase el ALIAS comando para más detalles). Si ha definido un alias con ese nombre, se ejecuta (esto le permite controlar el manejo de errores para comandos desconocidos). Si TCC no puedo encontrar un DESCONOCIDO_CMD alias, buscará un comando de complemento llamado DESCONOCIDO_CMD. De lo contrario, TCC muestra un mensaje de error "Comando desconocido" y espera la siguiente instrucción.

 

Ver también: el CUAL mando.