What is the difference between "C:FILE.TXT" and "C:\FILE.TXT"?
Solution 1:
C:FILE.TXT
refers to FILE.TXT
in the current directory of drive C:
C:\FILE.TXT
refers to FILE.TXT
in the root directory of drive C:
(C:\
)
They are not the same.
Edit: Command Prompt Example:
Windows remembers a current working directory for each drive. Say you are working in directory C:\UTILS
and then you change to drive F:
and then to directory BIN
on F:
:
C:\UTILS> F: F:\> CD BIN F:\BIN>
At this point the current working directory for C:
is still C:\UTILS
and the current working directory for F:
is F:\BIN
You can verifiy this with the CD
command:
F:\BIN> CD C: C:\UTILS F:\BIN>
Note that you did not change the working drive back to C:
by using this command.
As you will see from the following command examples, the use of a backslash (\
) immediately after a drive name (X:
) makes the file location absolute. Ommiting the backslash automatically involves the current working directory for the drive.
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 to C:\PROGRAM.EXE F:\BIN> COPY F:\PROGRAM.EXE C: Copies* F:\PROGRAM.EXE to C:\UTILS\PROGRAM.EXE F:\BIN> COPY F:PROGRAM.EXE C:NEW\NEW_PROG.EXE Copies* and renames F:\BIN\PROGRAM.EXE to C:\BIN\NEW\NEW_PROG.EXE
* 'Copies' means 'attempts to copy'. These commands will fail if the assumed directory structures and current working directories don't exist or are changed by another process.
In the case where the working directory is the root directory (eg. C:\
) then C:PROGRAM.EXE
and C:\PROGRAM.EXE
point to the same location, but they have been arrived at by different methods.