使用Mklink可以创建一个目录链接,从而完美转移文件/文件夹

MS官方文档

https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/mklink

mklink [/d] | [/h] | [/j]] <Link> <Target>

  • /D 创建目录符号链接。默认情况下,mklink会创建文件符号链接。
  • /H 创建硬链接而不是符号链接。
  • /J 创建目录连接。
  • link 新链接路径
  • Target 源文件/文件夹路径

目录链接

/D、/J,都是创建文件夹链接,区别在于:

1. 创建新链接路径

/D可以是相对路径,也可以是绝对路径;/J只是绝对路径

2. 执行后,剪切/移动新链接路径

/D方式创建的话,只是把目录链接剪切到新地址,源文件夹没有影响;/J会删除链接路径下的所有数据,删除源文件夹下的所有数据,在新地址创建一份链接路径结构的全部数据。

比如:

mklink /D "C:\新建文件夹" "C:\目录转移测试",会在C盘创建一个链接 “新建文件夹”,打开链接文件夹,里面含有 “C:\目录转移测试"的所有文件数据。

剪切 “新建文件夹”到D盘,只是把“新建文件夹”链接,剪切到了D盘"D:\新建文件夹",C盘的链接没有了,而"C:\目录转移测试"数据没有影响。

mklink /J "C:\新建文件夹" "C:\目录转移测试",创建的链接与/D是一致的

但剪切 “新建文件夹”到D盘,链接“新建文件夹”没有删除,但是删除了链接目录下的所有关联。同时在D盘创建文件夹"D:\新建文件夹",并将源"C:\目录转移测试"下的数据全部剪切过来,只保留源"C:\目录转移测试"文件夹。

文件链接

/H 是文件的转移,比如:mklink /h C\1.file D:1.file

只是文件的复制,并没有创建快捷方式。

常见的异常

1. "当文件已存在时,无法创建该文件。"

原因:mklink只是生成链接,所以生成链接的地址如果有相同名称的文件夹,是无法创建成功的。

一般我们使用Mklink时,先把"C:\新建文件夹" 剪切到"D:\新建文件夹".

然后使用 mklink /D "C:\新建文件夹" "D:\新建文件夹",在C盘创建一个新建文件夹的快捷方式

其它的异常,本人没有遇到就不总结了,可见小伙伴的博客:解决 mklink 使用中的各种坑(硬链接,软链接/符号链接,目录链接)

Mklink 转移文件/文件夹的更多相关文章

  1. 升级 macOS Big Sur 差点丢了我多年的珍藏文件(夹)!!!

    原来升级 macOS Big Sur 过程中会转移根目录下的个人文件(夹). 春节期间升级了一下 macOS ,升级之前就比较担心丢数据,然而怕什么来什么.升级之后发现根目录下的个人文件(夹)都不见了 ...

  2. NSFileManager计算文件/文件夹大小

    在一些软件中,一般都会给用户展现当前APP的内存,同时用户可以根据自己的需要来清除缓存的内容.一般而言,文件夹是没有大小这个属性的,所以需要遍历文件夹的内容来计算文件夹的大小,下面用NSFileMan ...

  3. linux下SVN忽略文件/文件夹的方法

    linux下SVN忽略文件/文件夹的方法 假设想忽略文件temp 1. cd到temp所在的目录下: 2. svn propedit svn:ignore . 注意:请别漏掉最后的点(.表示当前目录) ...

  4. 【SVN】删除文件/文件夹 svn: E205007: Could not use external editor to fetch log message

    在SVN Server上删除文件/文件夹 svn delete 文件的URL -m "评论" 一定要加 -m 不然会报错 svn: E205007: Could not use e ...

  5. Linux中RM快速删除大量文件/文件夹方法

    昨天遇到一个问题,在Linux中有一个文件夹里面含有大量的Cache文件(夹),数量级可能在百万级别,使用rm -rf ./* 删除时间慢到不可接受.Google了一下,查到了一种方法,试用了下确实比 ...

  6. linux压缩文件(夹) zip uzip命令的用法

    压缩文件(夹) # 压缩列举的文件,格式如下: zip 压缩包名称 文件1 文件2 文件3 ... # 压缩test.txt, a.out文件,并取名为abc.zip $ zip abc.zip te ...

  7. tomcat 禁止某些文件(夹)的访问

    tomcat 禁止某些文件(夹)的访问 <!-- 不允许访问的文件以及文件夹 --> <security-constraint> <display-name>Tom ...

  8. 修改Atom 隐藏.gitignore忽略的文件/文件夹的配置

    参考链接:.gitignored files are hidden from tree view regardless of setting 假如Atom打开的文件夹有.gitignore 文件,会隐 ...

  9. C#压缩、解压缩文件(夹)(rar、zip)

    主要是使用Rar.exe压缩解压文件(夹)(*.rar),另外还有使用SevenZipSharp.dll.zLib1.dll.7z.dll压缩解压文件(夹)(*.zip).需要注意的几点如下: 1.注 ...

随机推荐

  1. 【30.01%】【hdu 3397】Sequence operation

    Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submissio ...

  2. js三大框架出现的意义

    解决了原始html,css,js的UI与数据状态之间同步的难题,避免了大量的操作DOM代码. 使用了React,Angular和Vue,我们只需要定义一次 UI 界面,不再需要为每个操作编写特定的 U ...

  3. CodeForces - 375D Tree and Queries (莫队+dfs序+树状数组)

    You have a rooted tree consisting of n vertices. Each vertex of the tree has some color. We will ass ...

  4. 基于vs2015 SignalR开发的微信小程序使用websocket实现聊天功能

    一)前言 在微信小程上实现聊天功能,大致有三种方式:1)小程序云开发 2)购买第三方IM服务 3)使用自己的服务器自己开发. 这里重要讲使用自己的服务器自己开发,并且是基于vs的开发. 网上提供的解决 ...

  5. vc++ 监控指定路径下文件变化

    参考MSDN文档 https://docs.microsoft.com/zh-cn/windows/desktop/api/winbase/nf-winbase-readdirectorychange ...

  6. Java高级特性——注解(Annotation)

    文件地址:https://github.com/xiaozhengyu/StudyNotes.git

  7. Spring Security详解

    Spring Security 一. 简介 Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架.它提供了一组可以在Spring应用上下文 ...

  8. Shiro权限管理框架(五):自定义Filter实现及其问题排查记录

    明确需求 在使用Shiro的时候,鉴权失败一般都是返回一个错误页或者登录页给前端,特别是后台系统,这种模式用的特别多.但是现在的项目越来越多的趋向于使用前后端分离的方式开发,这时候就需要响应Json数 ...

  9. 16.用pycharm导入自己写的模块时,import无法识别的解决办法

    我们用pycharm打开自己写的代码,当多个文件之间有相互依赖的关系的时候,import无法识别自己写的文件,但是我们写的文件又确实在同一个文件夹中, 这种问题可以用下面的方法解决: 1)打开File ...

  10. 日志查看工具 logviewer pro的使用

    1.logViewer Pro 介绍 logViewer Pro 是一款log文件查看器,它可以在短短数秒内打开上G的LOG文件,支持高亮某行文字(例如警告,错误),支持Unicode名字,支持查看的 ...