none
PowerShell: поиск определенных папок. RRS feed

  • Вопрос

  • Здравствуйте, помогите пожалуйста.

    Задача найти на удаленных машинах все папки tasks и сделать список вида:

    Serser: test1

    C:/tasks/test/test/test.jpg

    C:/tasks/test/test/

    C:/tasks/test/

    C:/tasks/test/

    C:/tasks/

    C:/windows/tasks/tets 

    ...

    В общем список путей до всех файлов и директорий. Вот что у меня вышло:

    function scanfolder {
    	
    
    
    
    $dir= "\\" + $args[0] + "\C$"
    Write-Host -ForegroundColor GREEN "Проверка папки $dir"
    $AllPath=@{}
    #Насколько глубоко уходить
    $sub = $args[1]
    #Генерирую адрес из параметра функции	
    $dir= "\\" + $args[0] + "\C$"
    $path=dir $dir | where-object {$_.PSIscontainer}
    $AllPath=$path
    $cnt=0
    For ($o=1; $o -lt $Sub; $o++)
    {
        $PPath=$AllPath
        For ($i=$Cnt; $i -lt $PPath.Count; $i++)
            {
            $a = dir $PPath[$i].FullName | where-object {$_.PSIscontainer}
            if ($a -like "*tasks") {$AllPath = $AllPath + $a}
            }
        $cnt=$PPath.Count
    }
    Foreach ($WF in $AllPath)
        {
            if ($WF.FullName -like "*tasks") 
            {$GC = Get-ChildItem $WF.FullName
    	if ($GC -ne $null) {$WF | Out-File C:/tasks.txt -Append}
        }}
    	}

    Но после того как оказалось нужно выводить полный путь до всех папок и файлов я застрял :(

Ответы

Все ответы