词条 | Ln (Unix) |
释义 |
| name = ln | logo = | screenshot = | screenshot size = | caption = | developer = AT&T Bell Laboratories | released = {{Start date and age|1971|11|3}} | latest release version = | latest release date = | operating system = Unix and Unix-like | genre = Command | license = | website = }} The {{code|ln}} command is a standard Unix command utility used to create a hard link or a symbolic link (symlink) to an existing file.[1] The use of a hard link allows multiple filenames to be associated with the same file since a hard link points to the inode of a given file, the data of which is stored on disk. On the other hand, symbolic links are special files that refer to other files by name.[2] The {{code|ln}} command by default creates hard links, and when called with the command line parameter {{code|ln -s}} creates symbolic links.[3] Most operating systems prevent hard links to directories from being created since such a capability could disrupt the structure of a file system and interfere with the operation of other utilities.[4] The {{code|ln}} command can however be used to create symbolic links to non-existent files.[2] HistoryThe version of {{code|ln}} bundled in GNU coreutils was written by Mike Parker and David MacKenzie.[5] LinksLinks allow more than one filename to refer to the same file as in the case of a hard link or act as pointers to a filename as in the case of a soft link. Both hard links and soft links can be created by the {{code|ln}} command. Specifically,
SpecificationThe {{code|ln}} utility on systems compliant with the Single Unix Specification is specified in the Shell and Utilities (XCU) document, which forms a part of the Single Unix Specification.[10][11] The specification describes two ways of invoking the {{code|ln}} utility.[12] Specifically, In the "single file" invocation the {{code|ln}} utility creates a new hard link (directory entry) for the source file specified by the {{code|source_file}} operand at the destination path specified by the {{code|target_file}} operand. However, if the {{code|-s}} option is specified, a symbolic link is created. ln [-fs] [-L|-P] source_file target_file In the "multiple file" invocation the {{code|ln}} utility creates a new hard link (directory entry), or if the {{code|-s}} option is specified, a symbolic link, for each file specified by the {{code|source_file}} operand, at a destination path in an existing directory named by operand {{code|target_file}}. ln [-fs] [-L|-P] source_file_1 source_file_2 ... target_dir The specification also specifies the command line options that must be supported: {{code|-f}} Force existing destination pathnames to be removed to allow the link. {{code|-L}} For each {{code|source_file}} operand that names a file that is a symbolic link, create a hard link to the file referenced by the symbolic link. {{code|-P}} For each {{code|source_file}} operand that names a file that is a symbolic link, create a (hard) link to the symbolic link itself. {{code|-s}} Create symbolic links instead of hard links. If the -s option is specified, the -L and -P options are silently ignored. If more than one of the mutually-exclusive options {{code|-L}} and {{code|-P}} is specified the last option specified determines the behavior of the utility. If the {{code|-s}} option is not specified and neither a {{code|-L}} nor a {{code|-P}} option is specified, the implementation defines which of the {{code|-L}} and {{code|-P}} options will be used as the default. If neither target file nor target directory are specified, links will be created in the current working directory. See also
References1. ^1 2 {{cite book|last1=Kernighan|first1=Brian W.|last2=Pike|first2=Rob|title=The Unix programming environment.|date=1984|publisher=Prentice-Hall|location=Englewood Cliffs, N.J.|isbn=013937681X|page=59}} 2. ^1 {{cite web|title=GNU Coreutils: ln invocation|url=https://www.gnu.org/software/coreutils/manual/html_node/ln-invocation.html|website=gnu.org|publisher=Free Software Foundation, Inc.|accessdate=7 August 2015}} 3. ^{{cite web|title=ln - The Open Group Base Specifications Issue 7|url=http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ln.html|website=pubs.opengroup.org|publisher=The IEEE and The Open Group|accessdate=7 August 2015}} 4. ^{{cite web|title=Why are hard links not allowed to directories in UNIX/Linux?|url=http://unix.stackexchange.com/questions/22394/why-hard-links-not-allowed-to-directories-in-unix-linux?rq=1|website=unix.stackexchange.com|accessdate=7 August 2015}} 5. ^https://linux.die.net/man/1/ln 6. ^{{cite web|title=Speaking UNIX: It is all about the inode|url=http://www.ibm.com/developerworks/aix/library/au-speakingunix14/|website=ibm.com|publisher=IBM developerWorks|accessdate=7 August 2015}} 7. ^{{cite book|last1=Bovet|first1=Daniel P.|last2=Cesati|first2=Marco|title=Understanding the Linux Kernel|date=2005|publisher=Safari Tech Books Online|location=Boston, MA|isbn=0596005652|page=14|edition=3rd}} 8. ^{{cite web|title=readlink(1) - Linux man page|url=http://linux.die.net/man/1/readlink|website=linux.die.net|accessdate=7 August 2015|ref=ReadlinkMan}} 9. ^1 {{cite book|last1=Loosemore|first1=Sandra|last2=Stallman|first2=Richard M.|last3=McGrath|first3=Roland|last4=Oram|first4=Andrew|last5=Drepper|first5=Ulrich|title=The GNU C Library Reference Manual|publisher=Free Software Foundation, Inc|page=392|url=https://www.gnu.org/software/libc/manual/pdf/libc.pdf|accessdate=7 August 2015}} 10. ^{{cite web|title=The Single UNIX Specification, Version 4 - Overview|url=http://www.unix.org/version4/overview.html|website=unix.org|publisher=unix.org|accessdate=7 August 2015}} 11. ^{{cite web|title=Shell & Utilities: Detailed Toc|url=http://pubs.opengroup.org/onlinepubs/9699919799/utilities/contents.html|website=pubs.opengroup.org|publisher=The IEEE and The Open Group|accessdate=7 August 2015}} 12. ^{{cite web|title=ln|url=http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ln.html#tag_20_67|website=pubs.opengroup.org|publisher=The IEEE and The Open Group|accessdate=7 August 2015}} External links
2 : Standard Unix programs|Unix SUS2008 utilities |
随便看 |
|
开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。