2014-06-22 49 views
0

我想使用運行的服務器的名稱動態輸出文件,而不是指定要使用的名稱。因爲我想使用多實例方法在多個服務器上運行代碼。將輸出文件的名稱更改爲servername

$OutFile = "C:\Users\munjanga\Documents\AoN Project\Execute\Output.csv" 
$Header = "FolderPath,IdentityReference,AccessControlType,IsInherited,InheritanceFlags,PropagationFlags" 
Del $OutFile 
Add-Content -Value $Header -Path $OutFile 

$RootPath = "C:\Users\munjanga\Documents\Operations Orchestration" 

$Folders = dir $RootPath -recurse | where {$_.psiscontainer -eq $true} 

foreach ($Folder in $Folders){ 
    $ACLs = get-acl $Folder.fullname | ForEach-Object { $_.Access } 
    Foreach ($ACL in $ACLs){ 
     $OutInfo = $Folder.Fullname + "," + $ACL.IdentityReference + "," + $ACL.AccessControlType + "," + $ACL.IsInherited + "," + $ACL.InheritanceFlags + "," + $ACL.PropagationFlags 
     Add-Content -Value $OutInfo -Path $OutFile 
    } 
} 

回答

0

如果我的理解正確,您想要根據服務器的名稱更改$ OutFile。你可以使用環境類的MachineName屬性來做到這一點:

$OutFile = "C:\Users\munjanga\Documents\AoN Project\Execute\$([Environment]::MachineName).csv" 
+0

它的工作感謝你。 – user3738022

相關問題