我一直在尝试从多个来源建立符号链接。
我reg.txt
在目录中有一个文件new
以及 sort.bat。
: reg.txt
-
redcar1=123456 greencar2=345678
在vehicles
使用 'reg_numbers' 的子目录调用的目录中,即:-在该目录中,我有一个名为或123456
的子目录,其中包含一个文件。keys
key
*.txt
我想将所有“reg_numbers”(解析reg.txt
- 在进程中更改文件夹名称)目录符号链接到new
sort.bat 文件所在的目录,以及所有keys
或Key
目录文件(*.txt)到一个公共keys
目录在new
文件夹中
所以说:-
D:\vehicles\123456\keys\this.txt
D:\vehicles\345678\key\that.txt
符号链接
e:\new\redcar1\
e:\new\greencar2\
e:\new\keys\this.txt
e:\new\keys\that.txt
sort.bat 在新文件夹中。
@echo off
setlocal EnableDelayedExpansion
set NEWPATH=%~dp0
set OLDPATH=d:\vehicles
for /f %%d in ('dir /b %NEWPATH%\keys') do (
if not "%%d"=="not.txt" del /Q "%NEWPATH%Keys\%%d" ::clean out files
)
for /f "tokens=1,2 delims==" %%a in (reg.txt) do (
rmdir /Q "%NEWPATH%%%a" ::clean out dir
mklink /D %NEWPATH%"%%a" %OLDPATH%\"%%b"
for /f %%c in ('dir /b %OLDPATH%\%%b\keys' ) do (
mklink %NEWPATH%Keys\"%%c" %OLDPATH%\"%%b"\"%%c"
)
)
这可能是一团糟,但它几乎适用于所有东西,但我无法获取that.txt
fromkey
文件夹。