none
Пакетное создание символьных ссылок RRS feed

  • Вопрос

  • Доброго времени суток.


    Есть две папки 

    В первой содержится n-ое кол-во папок, вторая изначально пустая.

    Стоит следующая задача.Чтобы при запуске скрипта(желательно powershell) во второй папке  появлялись симлинки на все папки из первой(с теми же именами) и соответственно при удалении из первой-пропадали симлинки

    Заранее спасибо

    16 сентября 2015 г. 15:08

Ответы

  • $src = "C:\Folder1"
    $dst = "C:\Folder2"
    
    #Создание
    Get-ChildItem $src | Where {$_.PsIsContainer} | Foreach {
    	cmd /c "mklink  /D ""$dst\$($_.Name)"" ""$src\$($_.Name)"""
    }
    
    #Удаление
    Get-ChildItem $dst | Foreach {
    	$path = $_.FullName
    	try {Get-ChildItem $path -Ea Stop} 
    	catch  {
    		if($_.CateGoryInfo.Reason -eq "DirectoryNotFoundException") {
    			cmd /c "rmdir ""$path"""
    		}
    	}
    }

    • Предложено в качестве ответа Vector BCOModerator 16 сентября 2015 г. 19:12
    • Помечено в качестве ответа Omni_Vidente 17 сентября 2015 г. 6:22
    16 сентября 2015 г. 16:59
    Отвечающий