¿Cuál es la diferencia entre " C:FILE.TXT" y " C:\FILE.TXT"?
¿Son lo mismo?
¿Cuál es la diferencia entre " C:FILE.TXT" y " C:\FILE.TXT"?
¿Son lo mismo?
C:FILE.TXTse refiere FILE.TXTen el directorio actual de la unidadC:
C:\FILE.TXThace referencia FILE.TXTen el directorio raíz de drive C:( C:\)
Ellos no son los mismos.
Editar: Ejemplo de símbolo del sistema:
Windows recuerda un directorio de trabajo actual para cada unidad. Digamos que está trabajando en el directorio C:\UTILSy luego cambia a la unidad F:y luego al directorio BINen F::
C: \ UTILS> F: F: \> CD BIN F: \ BIN>
En este punto, el directorio de trabajo actual C:es todavía C:\UTILSy el directorio de trabajo actual F:esF:\BIN
Puede verificar esto con el CDcomando:
F: \ BIN> CD C: C: \ UTILS F: \ BIN>
Tenga en cuenta que no volvió a cambiar la unidad de trabajo C:utilizando este comando.
Como verá en los siguientes ejemplos de comandos, el uso de una barra diagonal inversa ( \) inmediatamente después de un nombre de unidad ( X:) hace que la ubicación del archivo sea absoluta. La omisión de la barra diagonal inversa implica automáticamente el directorio de trabajo actual para la unidad.
F: \ BIN> COPY F: PROGRAM.EXE C: Copies * F: \ BIN \ PROGRAM.EXE to C: \ UTILS \ PROGRAM.EXE
F: \ BIN> COPY F: PROGRAM.EXE C: \ Copies * F: \ BIN \ PROGRAM.EXE a C: \ PROGRAM.EXE
F: \ BIN> COPY F: \ PROGRAM.EXE C: Copia * F: \ PROGRAM.EXE a C: \ UTILS \ PROGRAM.EXE
F: \ BIN> COPY F: PROGRAM.EXE C: NEW \ NEW_PROG.EXE Copias * y cambios de nombre
F: \ BIN \ PROGRAM.EXE
a C: \ BIN \ NEW \ NEW_PROG.EXE
* 'Copias' significa 'intentos de copiar'. Estos comandos fallarán si las estructuras de directorio asumidas y los directorios de trabajo actuales no existen o si otro proceso los cambia.
En el caso de que el directorio de trabajo es el directorio raíz (por ejemplo. C:\) A continuación C:PROGRAM.EXEy C:\PROGRAM.EXEpunto en la misma ubicación, pero se han llegado a través de diferentes métodos.
cmd.exeshell. En otros programas, si se proporciona una unidad diferente a la actual, dichas especificaciones de ruta siempre serán relativas a la raíz de esa unidad.int xes lo mismo queint y; no son ===, pero pueden ser == si ambos tienen el mismo valor. @grawity, por supuesto, las aplicaciones de Windows (Win32, no solo NT) no tienen cwd por unidad, ya que no significaría nada en ese contexto. De todos modos, no es solo cmd; Todas las aplicaciones de consola lo tienen .