####Dieses Skript ließt eine csv aus und stelllt alle Verzeichnis in der csv auf hidden ###vars $ROOTFolder = "C:" $LogFolder = "$ROOTFolder\hidden_folder.log" $CSV_Read_Folder = "$PSScriptRoot\folder.csv" $CSV_Read_User = "$PSScriptRoot\user.csv" $User_Folder = "$ROOTFolder\Users" $CSV_File_Folder = Import-Csv -Path "$CSV_Read_Folder" $CSV_File_User = Import-Csv -Path "$CSV_Read_User" ### ### funktion function create_hidden_folder($hidden_folder){ if (-not (Test-Path -Path "$hidden_folder" -PathType Container)) { $output_return_not_exist = "Error: $(Get-Date) - Das Verzeichnis,File $hidden_folder existiert nicht !!!" return "$output_return_not_exist" } else { Get-Item "$hidden_folder" -Force |foreach { $_.Attributes = "Hidden" $output_retunr_works = "Info: $(Get-Date) - Das Verzeichnis,File $hidden_folder wurde versteckt. " Write-Host "$($_.FullName)" return "$output_retunr_works" } } } function create_hidden_folder_rec($hidden_folder_rec){ if (-not (Test-Path -Path "$hidden_folder_rec" -PathType Container)) { $output_return_not_exist = "Error: $(Get-Date) - Das Verzeichnis,File $hidden_folder_rec existiert nicht !!!" return "$output_return_not_exist" } else { Get-ChildItem "$hidden_folder_rec" -Recurse -Force |foreach { $_.Attributes = "Hidden" $output_retunr_works = "Info: $(Get-Date) - Das Verzeichnis,File $($_.FullName) wurde versteckt. " Write-Host "$($_.FullName)" return "$output_retunr_works" } } } ####Main### foreach ($csv_out_user in $CSV_File_User) { $User_Folder_Set = "$($User_Folder)\$($csv_out_user.User)" if (-not (Test-Path -Path "$User_Folder_Set" -PathType Container)) { $output_return_not_exist = "Error: $(Get-Date) - Das Userverzeichnis $User_Folder_Set existiert nicht !!!" |Out-File -FilePath $LogFolder -Append } ELSE { foreach ($csv_out in $CSV_File_Folder) { Get-Item "$User_Folder_Set" |foreach { $full_path = "$($_.FullName)\$($csv_out.Path)" create_hidden_folder($full_path)|Out-File -FilePath $LogFolder -Append create_hidden_folder_rec($full_path)|Out-File -FilePath $LogFolder -Append } } } }