Unix Create a Symbolic Link

UNIX系统中这样来创建一个软连接(symbolic link):

$ ln -s {/path/to/file-name} {link-name}
$ ln -s /shared/sales/data/file.txt sales.data.txt
$ vi sales.data.txt
$ ls -l sales.data.txt

怎样删除软连接呢?很简单,这样:

$ rm {link-name}
$ rm sales.data.txt
$ ls -l
$ ls -l /shared/sales/data/file.txt

如果你删除了软连接(比如sales.data.txt),它所连接的数据(/shared/sales/data/file.txt)还存在。但是,如果你删除了/shared/sales/data/file.txt,sales.data.txt将成为破坏了的连接,数据也就丢失了

UNIX系统中还可以创建硬连接,用法如下(就是上面的命令中把参数-s去掉):

$ ln {file.txt} {hard-link}
$ ln /tmp/file link-here

同样可以删除硬连接:

$ rm {hard-link}
$ rm link-here

如果你删除了硬连接,数据还存在。如果删除了/tmp/file,还是可以通过link-here来访问数据。其实就是把数据拷贝了一份。