windows用硬链接备份目录文件夹


@echo off
set workingDir=%~dp0
set link=E:\hardBackup\
mkdir "%link%"
XCOPY /T "%workingDir%" "%link%"
setlocal enabledelayedexpansion
for /r "%workingDir%" %%i in (. *) do ( 
set "dirnoname=%%~dpi"
echo next
echo !dirnoname!%%~nxi
mklink /h "%link%!dirnoname:%workingDir%=!%%~nxi" "%%i"
)

 

保存为bat,放入备份的目录,用管理员执行

效果:在E:\hardBackup\中生成目标目录完整的备份,不需要额外的空间,可以随时查看文件或被程序访问,升级版垃圾桶

注意:备份在同驱动器,everything不能检索到,windows可以检索

原理:先复制空目录结构,再批量创建硬链接。!dirnoname:%workingDir%=! 把原始目录的不变段 替换成 新目录,最终实现:新目录+原始目录内的子目录+文件名。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM