En informática , SUBST
es un comando en los sistemas operativos DOS , IBM OS/2 , [1] Microsoft Windows y ReactOS [2] que se utiliza para sustituir rutas en unidades físicas y lógicas como unidades virtuales .
En MS-DOS , el SUBST
comando se agregó con el lanzamiento de MS-DOS 3.1. [3] El comando es similar a unidades flotantes , un concepto más general en sistemas operativos de origen Digital Research , incluyendo CP/M-86 2.x, Personal CP/M-86 2.x, DOS concurrente , DOS multiusuario , Sistema Manager 7, REAL/32 , así como DOS Plus y DR DOS (hasta 6.0). DR DOS 6.0 incluye una implementación del SUBST
comando. [4] El comando también está disponible en FreeDOS [5] y PTS-DOS . [6] El SUBST
comando de Windows está disponible en versiones compatibles del intérprete de línea de comandos cmd.exe . [7] En Windows NT , SUBST
se utiliza DefineDosDevice()
para crear las asignaciones de disco.
El JOIN
comando es lo "opuesto" a SUBST
, porque JOIN
tomará una letra de unidad y la hará aparecer como un directorio.
Algunas versiones de MS-DOS COMMAND.COM
admiten el TRUENAME
comando interno no documentado que puede mostrar el "nombre verdadero" de un archivo, es decir, el nombre completo con unidad, ruta y extensión, que posiblemente se encuentre solo por nombre a través de la variable de entorno PATH , o a través de y SUBST
asignaciones de sistemas de archivos.JOIN
ASSIGN
Esta es la sintaxis del comando en Windows XP para asociar una ruta con una letra de unidad:
SUBST [unidad1: [unidad2:]ruta]Unidad SUBST1: /D
drive1:
– Especifique una unidad virtual a la que asignar una ruta.[drive2:]path
– Especifique una unidad física y una ruta para asignarla a una unidad virtual./D
– Eliminar una unidad (virtual) sustituida.Esto significa que, por ejemplo, para asignar la raíz de C: a X:, se utilizaría el siguiente comando en la interfaz de línea de comandos :
C:\> SUBST X: C:\
Al hacer esto, aparecerá una nueva unidad llamada X: en la carpeta virtual Mi PC en el Explorador de Windows .
Para desasignar la unidad X: nuevamente, se debe escribir el siguiente comando en el símbolo del sistema:
C:\> SUSTITUTO X: /D
Se puede asignar una etiqueta personalizada [ cita necesaria ] a una letra de unidad creada de esta manera mediante una clave de registro, que se puede crear cambiando el nombre (seleccione "cambiar nombre" en el menú contextual de la letra de unidad o presione F2) la unidad SUBST en Windows Explorador/Mi PC.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DriveIcons\M\DefaultLabel\
(DefaultValue) = Your Drive Label
"M" representa la letra de unidad a la que asignar una etiqueta personalizada.
Sin embargo, las etiquetas creadas para unidades SUBST de esta manera se anulan por la etiqueta de la unidad/partición host: las etiquetas personalizadas solo se usan si la unidad host no tiene etiqueta. Entonces se puede:
Además, el comando LABEL puede cambiar el nombre de la etiqueta.
LABEL <Your Drive Letter>: "Your label value"
Las letras de unidad asignadas con el comando no están disponibles durante el inicio del sistema para los servicios ni persisten durante el reinicio.
El mecanismo de dispositivos DOS que subyace a subst se puede configurar en el registro. De esta manera, las unidades asignadas se pueden utilizar inmediatamente durante el inicio.
Cree una nueva entrada de registro "Valor de cadena" en la siguiente clave:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices
El nombre debe ser " X:
" donde X es la letra de la unidad.
El valor debe ser la ruta en uno de los siguientes formularios de NT Object Manager :
\??\C:\some\directory
(privilegiado)\DosDevices\C:\some\directory
(versión larga del primero)\Device\Mup\127.0.0.1\C$\some\directory
(desaconsejado, ya que esto pasa por la participación de las PYMES)Hay herramientas disponibles para realizar los cambios necesarios para el usuario, incluidas psubst
.
La clave relativa a esta clave de registro temática es HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices
. Define el mapeo de letras de unidad en particiones particulares del disco duro, similar a /etc/fstab en un sistema Unix . También se puede editar manualmente, pero sólo en ese momento mientras el sistema operativo Windows instalado en particular esté "inactivo". De modo que, por ejemplo, si actualmente arranca desde " D:\Windows
", podrá editar la HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices
clave de Windows que está instalada en una C:\Windows
carpeta " ", por ejemplo, realizando las siguientes acciones:
reg load hklm\$system C:\WINDOWS\system32\config\system
regedit.exe
HKEY_LOCAL_MACHINE\$system\MountedDevices
HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices
clave de registro de la instancia de Windows que está instalada en C:\WINDOWS
)regedit.exe
reg unload hklm\$system
(para completar el procedimiento de edición)La forma más sencilla de hacerlo es crear un archivo de registro (.reg) y hacer doble clic en el archivo para importar la configuración al registro.
Aquí hay un archivo de registro de ejemplo.
REGEDIT4[ HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Control\Session Manager\Dispositivos DOS] "F:" = "\\??\\D:\\Mount\\db" "G:" = "\\??\\D: \\Montar\\registro"
Después de configurar el registro, se debe reiniciar la computadora para que los cambios surtan efecto.
Cree un archivo por lotes para ejecutar el comando integrado SUBST
para crear una letra de unidad virtual para los puntos de montaje existentes y colóquelo en la carpeta de inicio de cuentas de usuario.
Esto no es recomendable, ya que la asignación solo aparece al final del inicio de sesión del usuario.
Aquí hay un ejemplo:
@ ECO apagadoSUSTITUTO f: d:\mount\dbSUSTITUTO g: d:\mount\log
El usuario debe cerrar sesión y volver a iniciarla o se debe reiniciar el servicio para que los cambios surtan efecto.
Edite el registro para ejecutar el comando subst incorporado durante el inicio de la computadora o el inicio de sesión del usuario aprovechando la clave de registro Ejecutar adecuada. La forma más sencilla de hacerlo es crear un archivo de registro (.reg) y hacer doble clic en el archivo para importar la configuración al registro.
Esto no es lo preferido, ya que el mapeo solo aparece al final del inicio.
Ejemplo para ejecutar durante el arranque de la computadora
REGEDIT4[ HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\Windows\CurrentVersion\Run] "F Drive" = "SUBST f: d:\\mount\\db" "G Drive" = "SUBST g: d:\\mount\\log"
Se debe reiniciar la computadora para que los cambios surtan efecto.
Ejemplo de inicio de sesión de usuario
REGEDIT4[ HKEY_CURRENT_USER \SOFTWARE\Microsoft\Windows\CurrentVersion\Run] "F Drive" = "SUBST f: d:\\mount\\db" "G Drive" = "SUBST g: d:\\mount\\log"
El usuario debe cerrar sesión y volver a iniciarla para que los cambios surtan efecto.
autorun.inf
los archivos de Microsoft Windows XP SP2 presentes en la nueva letra de unidad se ignoran; por lo tanto, AutoRun / AutoPlay no funciona en letras de unidad creadas de esta manera. Además, asignar un icono o etiqueta personalizada a la letra de unidad creada de esta manera autorun.inf
no funciona. Una etiqueta personalizada asignada a la letra de unidad creada subst
solo aparece si la unidad/volumen de origen no tiene una etiqueta de volumen configurada (verifique y configúrela con el label
comando).