Powershell 将输出文件的名称更改为servername

Powershell 将输出文件的名称更改为servername,powershell,Powershell,我希望使用已运行的服务器的名称动态输出文件,而不是指定要使用的名称。因为我想使用多实例方法在多台服务器上运行代码 $OutFile = "C:\Users\munjanga\Documents\AoN Project\Execute\Output.csv" $Header = "FolderPath,IdentityReference,AccessControlType,IsInherited,InheritanceFlags,PropagationFlags" Del $OutFile Add

我希望使用已运行的服务器的名称动态输出文件,而不是指定要使用的名称。因为我想使用多实例方法在多台服务器上运行代码

$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
    }
}

若我理解正确,您希望根据服务器名称更改$OutFile。可以使用环境类的MachineName属性执行此操作:

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