如何在PowerShell中批量遍历并处理150个CSV文件?
批量处理CSV文件的PowerShell脚本
基础批量处理脚本
直接匹配目标目录下的所有file*.csv文件并逐个处理:
Get-ChildItem -Path .\PD\file*.csv | ForEach-Object { Import-Csv -Path $_.FullName | .\script.ps1 }
按文件名数字顺序处理
如果需要严格按照file1到file150的顺序执行,添加排序逻辑:
Get-ChildItem -Path .\PD\file*.csv | Sort-Object { [int]($_.BaseName -replace 'file','') } | ForEach-Object { Import-Csv -Path $_.FullName | .\script.ps1 }
关键说明
Get-ChildItem -Path .\PD\file*.csv:精准匹配PD目录下所有以file开头、.csv结尾的文件Sort-Object逻辑:提取文件名中的数字部分并转为整数排序,避免因文件名字符串排序导致的顺序混乱(比如file10排在file2前面)- 确保
script.ps1支持管道输入:脚本内部需包含process块,或能直接处理来自管道的CSV对象;如果脚本依赖参数接收输入,可修改为.\script.ps1 -InputObject (Import-Csv $_.FullName),具体根据脚本参数定义调整
内容的提问来源于stack exchange,提问作者rzb1
相关产品推荐
相关产品推荐

