Windows mklink and linux ln are all link command that associate a link to a real file or folder.
windows mklink usage: mklink [ [/D] | [/H] | [/J] ] target source ---建立 tagret 到source的链接,target是链接名, source是实际文件/目录名。
/D 创建目录符号链接。默认为文件符号链接。 /H 创建硬链接,而不是符号链接。 /J 创建目录junction联接。
软链接:修改链接或者源互不影响,使用链接就如同使用源一样; 删除源则连接不删除, 但是链接失效。 删除链接源仍存在也可用。磁盘空间不增加,包括junction链接和符号链接( symbol link)。在文件系统中不是另外一个文件。通过mklink命令创建。
硬链接:修改链接或者修改源会同时相互影响,内容保持一致;源文件删除,链接文件仍存在且可用; 删除链接源仍存在且可用。 磁盘空间占双份。通过mklink命令创建。
快捷方式(shortcut):是指向源文件的另外一个文件,占同样大小的磁盘空间。通过图形界面下拉菜单创建。源文件删除,则快捷方式不删除但不能用。
支持平台: windows vista, win7,win8,windows server2008 ,windows server2012.
例子1 ,建立文件 file2 到文件 file1 的符号连接(类似linux的软链接),file1是实际文件。
mklink file2 file1
例子2, 建立目录folder2到目录folder1的硬链接,folder1是实际目录。
mklink /H folder2 folder1
例子3,建立目录folder2到目录folder1的符号链接,folder1是实际目录。
mklink /D folder2 folder1
Linux ln usage: ln [ [-s] | [-f] ] ] source target---建立target到 source的链接,target是链接名, source是实际文件/目录名。
-s 软链接
-f 如目标存在 则删除
软链接(symbolic link): 不额外占用磁盘空间,修改源或者链接都相互影响.
硬链接(hard link): 占用双份磁盘空间,修改源或者链接都相互影响.
支持平台: 任何Linux
例子1 ,建立文件 file2 到文件 file1 的符号连接,file1是实际文件。
ln -s file1 file2
例子2 ,建立文件 file2 到文件 file1 的硬连接,file1是实际文件。
ln file1 file2