使用Powershell列出具有特定文件夹的计算机

时间:2014-06-25 21:44:25

标签: powershell directory inventory

我正在尝试创建AD计算机的清单,其中安装了程序的测试版本。该程序不会在Windows程序列表中创建一个条目,它只是在Public用户文件夹中创建一个文件夹。出于多种原因,如果我可以轮询AD以获取计算机列表然后搜索"测试"那将是很好的。公共用户内的文件夹。

这就是我提出的,但当然它失败了,因为我是一个新手。

Get-ADComputer -Filter * | Get-ChildItem -path 'C:\Users\Public\Program\Test | Export-Csv \\computer\Users\Daren\Desktop\testfolder.csv

这是在另一个主板上发布此问题后有人写的更好的脚本,但输出是空白的,他们没有告诉我如何修复它。

$computers = get-adcomputer -filter *

$output = @()

ForEach ($computer in $computers) {

If(Test-Path -Path "\\$($computer.Name)\c$\Users\Public\path\test") {

    $output += $computer

    }

}

$output | Export-Csv -NoTypeInformation -Path .\test.csv

欢迎并欢迎所有意见!

1 个答案:

答案 0 :(得分:0)

这样的事情,也许是:

get-adcomputer -filter * | foreach-object {
  $computerName = $_.Name
  if ( test-path "\\$computerName\C$\Users\Public\path\test" ) {
    $computerName
  }
} | out-file list.txt

可替换地:

get-adobject -ldapfilter "(objectClass=computer)" | foreach-object {
  $computerName = $_.Name
  if ( test-path "\\$computerName\C$\Users\Public\path\test" ) {
    $computerName
  }
}