正在编写脚本以获取服务器上的所有文件并将其属性放入CSV中。下面的工作很好,但是,我想添加一些文件和文件夹排除。
对于文件夹,我想跳过cookie文件夹USERSnamePersonalsysdatacookies
对于文件,我想排除。link和。url文件。
谢谢。
$arr = @()
gci "D:COMPANYUSERSa, user" -recurse
| ? {$_.PSIsContainer -eq $False}
| % {
$obj = New-Object PSObject
$obj | Add-Member NoteProperty Directory $_.DirectoryName
$obj | Add-Member NoteProperty Name $_.Name
$obj | Add-Member NoteProperty MB ("{0:N3}" -f ($_.Length/1MB))
$obj | Add-Member NoteProperty created $_.creationtime
$obj | Add-Member NoteProperty LastAccessed $_.LastAccessTime
$obj | Add-Member NoteProperty LastMofified $_.LastWriteTime
$obj | Add-Member NoteProperty Extension $_.Extension
$obj | Add-Member NoteProperty Owner ((Get-ACL $_.FullName).Owner)
$arr += $obj
}
$arr | Export-CSV -notypeinformation "C:filesTest.csv"
它使用正则表达式,所以它不是超级快,但尝试在第3行添加过滤器:
| ? {$_.PSIsContainer -eq $False -and $_.Extension -notin ".lnk",".url" -and $_.Directory -notmatch ".*USERS\.*\Personal\sysdata\cookies"}