滴滴出行大数据:Mklink的参数及使用 - Benny Blog

来源:百度文库 编辑:中财网 时间:2024/05/06 04:02:23

Mklink的参数及使用

Jotting, by Benny.

在摆弄Dropbox的时候了解了Win7自带的mklink命令,简单来讲它类似于linux下的In命令,可以方便地创建NTFS文件系统中的文件或目录链接(类似某文件的快捷方式或目录的映射)。使用方法很简单,在开始菜单中右键 “命令提示符”,选中 “以管理员身份运行”,输入命令即可,输入“mklink /?”可以查看其帮助说明。mklink包含几个参数,在使用过程中遇到一些问题,阅读了一些资料后把总结分享出来,同时也方便自己今后的学习。

在介绍mklink的参数之前,有几个概念得弄清楚。mklink通过指定参数可以建立出不同形式的文件或目录链接,分为硬链接(hard link)、符号链接(symbolic link)和软链接(联接)(junction)三种。

  • 符号链接(symbolic link):

建立一个软链接相当于建立一个文件(或目录),这个文件(或目录)用于指向别的文件(或目录),和win的快捷方式有些类似。删除这个链接,对原来的文件(或目录)没有影像没有任何影响;而当你删除原文件(或目录)时,再打开链接则会提示“位置不可用”。

例如,可以将桌面上的ABC.exe程序通过建立一个软链接链接到D盘的ABC文件夹下,这样当我双击ABC.exe打开的就是D盘的ABC文件夹;或者我也可以将D盘的temp文件夹链接到C盘的系统temp文件夹下,这样就可以把临时文件夹映射到其他更大的分区中,解放系统分区。

  • 软链接(联接)(junction)

作用基本和符号链接类似。区别在于,软链接在建立时会自动引用原文件(或目录)的绝对路径,而符号链接允许相对路径的引用。

  • 硬链接(hard link)

建立一个硬链接相当于建立了一个文件的别名,例如对A.mp3创建了名字为 B.mp3的硬链接,则修改硬链接文件同时原文件也被修改,但是删除其中任何一个则对另一个没有影响。

例如删除A.mp3则B.mp3则会被系统识别为一个普通的文件,数据与原A.mp3相同。A.mp3、B.mp3均是同一个文件的别名,而符号(软)链接建立的是一个路径文件,即链接文件内的内容是指向原文件的路径,它们是不同的两个文件。

  • 建立链接文件的几点注意:

1、建立文件或目录链接限于 NTFS 文件系统,符号(软)链接的建立可以跨文件系统;
2、硬链接只能用于文件,不能用于目录,符号(软)链接可以为目录建立链接;
3、硬链接只能建立同一分区内的文件指向;
4、硬链接不允许对空文件建立链接,符号(软)链接可以。

  • 上边提到了符号链接(symbolic link)和win的快捷方式(shortcut),引用wiki说明它们的区别。

快捷方式(shortcut)是一种功能上类似符号链接的文件对象,但与符号链接有本质的不同。快捷方式是普通的文件(拥有扩展名 .lnk),而非符号,因此,快捷方式可以被复制、移动、更改(某些特殊的快捷方式无法更改所有信息)或删除。快捷方式可以指向文件、文件夹或其他任何系统中合法的位置(包括控制面板、桌面等)。

概念弄清楚之后,mklink的参数定义就变得很清晰了:

  1. 无参数指定:建立文件的符号链接。无参数指定的默认情况下,建立的是文件的符号链接,删除链接文件不会影响源文件,
  2. /d:建立目录的符号链接符号链接(symbolic link)
  3. /j:建立目录的软链接(联接)(junction)
  4. /h:建立文件的硬链接(hard link)

命令格式:mklink /d(定义参数) \MyDocs(链接文件) \Users\User1\Documents(原文件)

最后,至于删除建立的链接,在“命令提示符”下用del就好了。