You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求编写PowerShell脚本:检查网络共享指定文件并输出至CSV

修正后的PowerShell脚本方案

问题分析

你的原脚本存在几个关键问题:

  • 遍历textfile.txt的条目但完全没用到循环变量$_,每次都固定查询本地C:\test目录
  • 每次循环执行Export-Csv会覆盖之前的结果,最终只保留最后一次循环的输出
  • -Include "*"没有起到过滤特定文件名的作用,等同于遍历所有文件
  • 目标是检查网络共享目录,但代码里写的是本地路径

修正步骤与代码

假设name.txt里每一行是要检查的特定文件名(比如report.pdf、data.xlsx),指定的网络共享目录是\\fileserver\shared,以下是修正后的脚本:

# 读取要检查的文件名列表
$targetFiles = Get-Content "C:\实际路径\name.txt"
# 指定要检查的网络共享目录(用UNC路径,比如\\服务器名\共享文件夹)
$networkPath = "\\fileserver\shared"
# 初始化空数组存储所有结果
$results = @()

foreach ($fileName in $targetFiles) {
    # 在网络目录递归查找匹配的文件,跳过无权限访问的目录
    $foundFiles = Get-ChildItem -Path $networkPath -Filter $fileName -Recurse -ErrorAction SilentlyContinue
    
    if ($foundFiles) {
        # 找到文件时,记录每个匹配文件的详细信息
        foreach ($file in $foundFiles) {
            $results += [PSCustomObject]@{
                TargetFileName = $fileName
                Name           = $file.Name
                DirectoryName  = $file.DirectoryName
                Exists         = $file.Exists
                FullName       = $file.FullName
                CreationTime   = $file.CreationTime
                LastWriteTime  = $file.LastWriteTime
            }
        }
    } else {
        # 未找到文件时,也记录该文件名的查找状态
        $results += [PSCustomObject]@{
            TargetFileName = $fileName
            Name           = $null
            DirectoryName  = $null
            Exists         = $false
            FullName       = $null
            CreationTime   = $null
            LastWriteTime  = $null
        }
    }
}

# 将所有结果一次性导出到CSV,避免覆盖
$results | Export-Csv -Path "C:\output\file_check_results.csv" -NoTypeInformation -Encoding UTF8

使用说明

  1. 替换C:\实际路径\name.txt为你本地name.txt的真实路径
  2. 替换\\fileserver\shared为目标网络共享的UNC路径
  3. -ErrorAction SilentlyContinue用于跳过无权限访问的子目录,防止脚本中途中断
  4. 脚本会完整记录每个目标文件名的查找结果,无论是否找到,都能在CSV里清晰核对

内容的提问来源于stack exchange,提问作者PConroy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 17:57:36