-
Notifications
You must be signed in to change notification settings - Fork 29
Open
Labels
Description
Creating symlinks in Windows using -mklink- (run in Command Prompt as Administrator).
First, create a .bat file, then use the following script to symlink either a folder or a specific file (say a CSV):
Version 1
@echo off
SETLOCAL
:: Set the paths for the versioned and non-versioned directories using 8.3 names
set "NON_VERSIONED_PATH=<PATH_FOLDER>"
set "REPO_PATH=<PATH_REPO>"
:: Ensure directories exist in NON_VERSIONED_PATH and remove any existing directories in REPO_PATH
if not exist "%NON_VERSIONED_PATH%\input" mkdir "%NON_VERSIONED_PATH%\input"
if exist "%REPO_PATH%\input" rmdir /s /q "%REPO_PATH%\input"
mklink /D "%REPO_PATH%\input" "%NON_VERSIONED_PATH%\input"
if not exist "%NON_VERSIONED_PATH%\output\data" mkdir "%NON_VERSIONED_PATH%\output\data"
if exist "%REPO_PATH%\output\data" rmdir /s /q "%REPO_PATH%\output\data"
mklink /D "%REPO_PATH%\output\data" "%NON_VERSIONED_PATH%\output\data"
if not exist "%NON_VERSIONED_PATH%\output\logs" mkdir "%NON_VERSIONED_PATH%\output\logs"
if exist "%REPO_PATH%\output\logs" rmdir /s /q "%REPO_PATH%\output\logs"
mklink /D "%REPO_PATH%\output\logs" "%NON_VERSIONED_PATH%\output\logs"
if not exist "%NON_VERSIONED_PATH%\tmp" mkdir "%NON_VERSIONED_PATH%\tmp"
if exist "%REPO_PATH%\tmp" rmdir /s /q "%REPO_PATH%\tmp"
mklink /D "%REPO_PATH%\tmp" "%NON_VERSIONED_PATH%\tmp"
ENDLOCALVersion 2
-- Folder --
@echo off
set NON_VERSIONED_PATH=C:\path\to\source_folder
set REPO_PATH=C:\path\to\link_folder
mklink /D "%REPO_PATH%" "%NON_VERSIONED_PATH%"
pause
-- File --
@echo off
set NON_VERSIONED_PATH=C:\path\to\source_file.csv
set REPO_PATH=C:\path\to\link_folder
mklink "%REPO_PATH%\%FILENAME%" "%NON_VERSIONED_PATH%"
pauseReactions are currently unavailable