在Windows7中使用mklink

在Windows7中使用mklink

我有兩個 USB 隨身碟D:\H:\裡面有一些 bin 文件

001.bin,002.bin在D上

003.bin 004.bin在H上

我想以這樣的方式創建一個符號鏈接,當程式訪問時,C:\bins它將找到001.bin,002.bin,003.bin,004.binUSB 驅動器中的所有文件,並從 USB 驅動器訪問它們。

我怎樣才能做到這一點?

答案1

使用單一符號連結合併兩個目錄是不可能的,因為一個連結只能有一個目標。這同樣適用於連接點和符號連結。 (在 Linux 上,這可以透過使用虛擬檔案系統(例如覆蓋檔案系統或者聯盟;其他一些類 Unix 系統也有類似的「聯合掛載」概念。不幸的是,Windows 上沒有這樣的東西。

但如果.bin檔案名稱始終保持不變,您可以直接建立檔案的符號連結:

mkdir c:\bins
mklink /f c:\bins\001.bin d:\001.bin
mklink /f c:\bins\002.bin d:\002.bin
mklink /f c:\bins\003.bin h:\003.bin
mklink /f c:\bins\004.bin h:\004.bin
...and so on

這可以重寫為:

for /f %f in (d:\*.bin) do mklink /f "c:\bins\%~nxf" "%~f"
for /f %f in (h:\*.bin) do mklink /f "c:\bins\%~nxf" "%~f"

答案2

我不認為您能夠從中獲取文件D:H:C:\bins.您應該能夠使用以下命令來建立下面的兩個目錄連接C:\bins

>mklink /D /J "C:\bins\d" "D:\"
>mklink /D /J "C:\bins\h" "H:\"

這將為您提供c:\bins\d以及c:\bins\h您將在哪裡找到001.bin, 002.bininc:\bins\d003.bin, 004.binin c:\bins\h

相關內容