这个问题背后的想法很简单,但我是批处理脚本的新手,所以细微差别让我无法做到。我需要创建一组符号链接来将几个共享公共父目录的源目录的内容复制到目标目录中。例如:在批处理脚本中使用修改的路径创建符号链接?
SrcDirParent
SrcDirA
FileA
SrcDirB
FileB
SubDir
FileC
使用哪种符号链接应该创建:
DstDir
FileA ~
FileB ~
SubDir
FileC ~
用〜展现一个符号链接。 SrcDirParent和DstDir从外部文件读取为绝对路径。我不知道SrcDirParent中的文件/文件夹是什么,一些相关的目录可能已经存在于DstDir中,而另一些则不存在。如果它们确实存在,我需要将符号链接与现有内容合并。
我目前碰到的障碍是文件路径。我计划用两个for循环是这样的:
for /d %%M in (%SRC%\*) do (
for /r %%F in (%SRC%\%%M\*) do (
mklink %DST%\%%F %SRC%\%%M\%%F
)
)
但是这需要%% M和%% F和这些变量相对文件路径都充满绝对路径。我不知道如何解决这个问题。
我期待的另一个问题是当SRC和DST存在冲突的文件路径时 - 我不想用符号链接覆盖现有路径。
希望这是您发布此出行资讯的最佳平台。提前致谢。
我不明白Dst树,SubDirA + B失踪? – LotPings
SrcDir应该是所有源目录的父级。我编辑过的例子使得这个例子更加清晰。 – user258887
所以你想完全消除第一个subdir级别,但保留SubSubdirs? – LotPings