【问题标题】:Powershell remote file search on servers on multiple drives在多个驱动器上的服务器上进行 Powershell 远程文件搜索
【发布时间】:2023-04-04 15:38:01
【问题描述】:

所以我有一个非常简单的 powershell 命令,它在远程服务器上查找特定的文件扩展名。这些远程服务器有多个逻辑驱动器(c:,e:,d: 等...),当我运行此命令时,它适用于服务器的 C: 驱动器,但之后任何驱动器都返回一个错误 Get-ChildItem:不能找到驱动器。名为“D”的驱动器不存在。

命令是这样的,任何帮助表示赞赏:

Get-WmiObject -ComputerName chsccm10 win32_logicaldisk -Filter "DriveType = 3" | Select-Object DeviceID | ForEach-Object {Get-ChildItem ($_.DeviceID + "\") -Include *.log -Recurse } | select VersionInfo

【问题讨论】:

  • 您正在尝试对本地计算机运行搜索结果!我敢打赌,您在本地没有驱动器D:。您需要将结果与Invoke-Command 或其他一些远程处理相结合。

标签: powershell search remote-server


【解决方案1】:

尚未测试,但可能是这样的:

$servers = gc c:\serverlist.txt

$results = $servers | %{
    invoke-command -cn $_  -scriptblock {
            gwmi win32_logicaldisk -filter "DriveType = 3" |
            select-object DeviceID |
            Foreach-object {
                Get-childitem ($_.DeviceID + "\") -include *.log -recurse } |
            select VersionInfo}}

$results | out-gridview

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-25
    • 1970-01-01
    • 1970-01-01
    • 2017-03-27
    • 1970-01-01
    相关资源
    最近更新 更多