最新消息:阿啰哈,本人90后,目前单身,欢迎妹子们来撩!.(。→‿←。) 微信:frank01991

递归创建hardlink的BAT脚本

(写于2011-12-31)费了点时间写了这个脚本,没想到最后其实3条代码就实现了……
下面这脚本可以实现:

把脚本执行的当前目录下的所有文件夹都创建在当前分区下的HardLink目录下(也就是保留原目录所有结构,只是都归属于HardLink目录下了),然后再递归创建所有文件的“硬连接”到HardLink目录下的同结构目录下。

@echo off
setlocal EnableDelayedExpansion
for /f "delims=" %%x in ('dir/ad /s /b') do (set d1=%%x & mkdir "!d1:~0,3!hardlink!d1:~3!")
for /f "delims=" %%c in ('dir/a-d /s /b') do (fsutil hardlink create "%cd:~0,3%hardlink%%~pnxc" "%%~fc")

这脚本安全无害,如果大家不理解它到底有功能,可以放心地拿来先测试一下


我上面那个脚本也许影响的范围比较大,可能不适用于你的需求,所以下面这个脚本可以实现只对当前目录下的文件创建hardlink

@echo off
for /f "tokens=2* delims=:" %%i in ('echo %cd%') do (set dir1=%%i %%j)
set dir2=%cd:~0,3%HardLink%dir1%
mkdir "%dir2%"
for /f "delims=" %%c in ('dir /a-d /b') do (fsutil hardlink create "%cd:~0,3%hardlink%%~pnxc" "%%~fc")

转载请注明:林志斌 » 递归创建hardlink的BAT脚本

发表评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址