如何在PowerShell中识别txt与非文本文件并新增列标注TRUE/FALSE
PowerShell 解决方案
你可以通过 Select-Object 的计算属性功能实现自定义列标注,完整命令如下:
# 替换为你实际的目标文件夹路径 Get-ChildItem -Path "C:\你的目标文件夹路径" -Recurse -File | Select-Object Name, FullName, Extension, @{Name='IsTxt'; Expression={ $_.Extension -ieq '.txt' }}
功能说明
-File:仅返回文件对象,自动过滤文件夹,避免无效判断-ieq:PowerShell 不区分大小写的比较运算符,不管后缀是.txt还是.TXT都能正确识别,如果需要严格区分大小写可以替换为-eq- 计算属性语法
@{Name='自定义列名'; Expression={判断逻辑}}:可以灵活生成自定义列,此处的判断逻辑会自动返回布尔值TRUE/FALSE,刚好匹配你的需求
可选拓展
如果需要把结果导出为 CSV 文件方便后续查看,直接在命令末尾追加导出语句即可:
Get-ChildItem -Path "C:\你的目标文件夹路径" -Recurse -File | Select-Object Name, FullName, Extension, @{Name='IsTxt'; Expression={ $_.Extension -ieq '.txt' }} | Export-Csv -Path "C:\导出结果\文件清单.csv" -Encoding UTF8 -NoTypeInformation
内容的提问来源于stack exchange,提问作者Learning_something_new
相关产品推荐
相关产品推荐

