| advertise add site services publishers database health videos | ![]() | about toolbar stats live show health store more stuff JOIN/LOGIN |
Compute Against Cancer: Frontier Compute Engine Installation Instructions computeagainstcancer.org | Computed Computed Tomography roanokeradiology.com |
For other meanings for this term, see Path.
A path, the general form of a filename or of a directory name, specifies a unique location in a file system. A path points to a file system location by following the directory tree hierarchy expressed in a string of characters in which path components, separated by a delimiting character, represent each directory. The delimiting character is most commonly the slash ("/"), the backslash character ("\"), or colon (":"), though some operating systems may use a different delimiter. Paths are used extensively in computer science to represent the directory/file relationships common in modern operating systems, and are essential in the construction of Uniform Resource Locators (URLs). Systems can use either absolute or relative paths. A full path or absolute path is a path that points to the same location on one file system regardless of the working directory or combined paths. It is usually written in reference to a root directory. A relative path is a path relative to the working directory of the user or application, so the full absolute path may not need to be given.
[edit] Representations of paths by operating system and shell
Japanese and Korean versions of Windows may often display the '¥' character or the '₩' character instead of the path separator. In such cases the code for a backslash is being drawn as these characters. Very early versions of MS-DOS replaced the backslash with these glyphs on the display to make it possible to display them by programs that only understood 7-bit ASCII (other characters such as the square brackets were replaced as well, see ISO 646, Windows Codepage 932 (Japanese Shift JIS), and Codepage 949 (Korean)). This predates the addition of paths in MS-DOS 2 and is a good indication that Microsoft never intended backslash to be the path separator, as a normal slash would display correctly. Although even the first version of Windows supported the 8-bit ISO-8859-1 character set which has the Yen sign at U+00A5, and modern versions of Windows supports Unicode which has the Won sign at U+20A9, much software will continue to display backslashes found in ASCII files this way to preserve backwards compatibility. Mac OS X, as a derivative of UNIX, uses UNIX paths internally. However, to preserve compatibility for software and familiarity for users, many portions of the GUI switch "/" typed by the user to ":" internally, and switch them back when displaying filenames (a ":" entered by the user is also changed into "/" but the inverse translation does not happen). [edit] Uniform Naming ConventionThe Microsoft Windows UNC, short for Universal Naming Convention or Uniform Naming Convention, specifies a common syntax to describe the location of a network resource, such as a shared file, directory, or printer. The UNC syntax for Windows systems has the generic form: \\ComputerName\SharedFolder\Resource Note: The UNC syntax sometimes appears written with forward slashes. Microsoft Windows treats forward slashes and back slashes as equivalent, but many programs will accept only backward slashes, and some will only accept double backslashes (i.e. \\\\ComputerName\\SharedFolder), especially in quoted string constants, due to the standard use of backslash as an escape character. The "SharedFolder" does not necessarily have the same name when viewed remotely as what a program on the server would see if it tried to open "\SharedFolder". Instead, the SharedFolder name consists of an arbitrary name assigned to the folder when defining its "sharing". Some Microsoft Windows interfaces also accept the "Long UNC": \\?\UNC\ComputerName\SharedFolder\Resource Microsoft Windows uses the following types of paths:
In earlier[when?] versions of Windows only the APIs that accept "Long UNC" could accept more than 260 characters. [edit] Posix pathname definitionUnix-like systems occasionally use a similar syntax.[1] POSIX allows treating a path beginning with two slashes in an implementation-defined manner,[2] though in other cases systems must treat multiple slashes as single slashes.[3] Many applications on Unix-like systems (for example, scp, rcp and rsync) use resource definitions such as: hostname:/directorypath/resource or like URLs with the service name (here 'smb'): smb://hostname/directorypath/resource [edit] Example[edit] Unix styleThe following worked example discusses the behavior of a Unix-style file system as it would appear from a terminal or terminal application (command-line window): Attached to a current working directory (cwd) of: /users/mark/ You want to change your current working directory to: /users/mark/bobapples At that moment, we can represent the relative path for the directory you want as: ./bobapples or for short: bobapples and the absolute path for the directory as: /users/mark/bobapples Given bobapples as the relative path for the directory you want, you may type the following at the command prompt to change your current working directory to bobapples: cd bobapples Two dots ("..") point upwards in the hierarchy, to indicate the parent directory; one dot (".") represents the current directory itself. Both can be components of a complex relative path (e.g., "../mark/./bobapples"), where "." alone or as the first component of such a relative path represents the working directory. (Using "./foo" to refer to a file "foo" in the current working directory can sometimes usefully distinguish it from a resource "foo" to be found in a default directory or by other means; for example, to view a specific version of a man page instead of the one installed in the system.) [edit] MS-DOS/Microsoft Windows styleContrary to popular belief, the Windows system API accepts forward slash, and thus all the above Unix examples should work. But many applications on Windows interpret a slash for other purposes or treat it as an invalid character, and thus require you to enter backslash — notably the cmd.exe shell (often called the "terminal" as it typically runs in a terminal window). Note that many other shells available for Windows, such as tcsh and Windows PowerShell, allow the forward slash. In addition "\" does not indicate a single root, but instead the root of the "current disk". Indicating a file on a disk other than the current one requires prefixing a drive letter and colon. No ambiguity ensues, because colon is not a valid character in an MS-DOS filename, and thus one cannot have a file called "A:" in the current directory. The following examples show MS-DOS/Windows-style paths, with backslashes used to match the most common syntax: A:\Temp\File.txt This path points to a file with the name File.txt, located in the directory Temp, which in turn is located in the root directory of the drive A:. C:..\File.txt This path refers to a file called File.txt located in the parent directory of the current directory on drive C:. Folder\SubFolder\File.txt This path denotes a file called File.txt located in SubFolder directory which in turn is located in Folder directory which is located in the current directory of the current drive (since this example gives no drive-specification). File.txt This rather simple path points to a file named \\.\COM1 This path refers to the first serial port (COM1). C:\>more < C:/Windows/system.ini ; for 16-bit app support [386Enh] woafont=dosapp.fon EGA80WOA.FON=EGA80WOA.FON EGA40WOA.FON=EGA40WOA.FON CGA80WOA.FON=CGA80WOA.FON CGA40WOA.FON=CGA40WOA.FON ... This example uses a path containing forward slashes as directory separator. The command redirects the content of the file to the E:\>dir "/Folder/SubFolder/" /Q Volume in drive E is Data Volume Serial Number is 07BE-0B10 Directory of E:\Folder\SubFolder 10/18/2008 08:15 AM <DIR> DOMAIN\user . 10/18/2008 08:15 AM <DIR> DOMAIN\user .. 10/18/2008 08:15 AM <DIR> DOMAIN\user File.txt 1 File(s) 8 bytes 2 Dir(s) 19,063,000 bytes free A path containing forward slashes often needs to be surrounded by double quotes to disambiguate it from command line switches.
CD "[drive letter]:/Program Files" will only work from the root ([drive letter]:\) directory. This appears to treat all forward slashes the same as .\. For example: CD "C:.\Program Files" works the same as CD "C:/Program Files" Also, from a root folder: CD "C:.\Program Files.\Internet Explorer" would be treated the same as CD "C:/Program Files/Internet Explorer" If there is no relative path to the directory name specified with forward slashes you will get the following error: The system cannot find the path specified. [edit] See also
[edit] ReferencesThis article was originally based on material from the Free On-line Dictionary of Computing, which is licensed under the GFDL. [edit] External links
|
| ↑ top of page ↑ | about thumbshots |