PowerShell技术问询:如何在现有查询中添加文件大小列
PowerShell脚本修改方案:添加文件大小列
一、CSV导出脚本修改
原脚本要添加文件大小(Length属性),只需在Select-Object的属性列表中加入Length即可,无需单独调用Select-Object。修改后的脚本如下:
Get-ChildItem -Filter '*.*' -Recurse -File | Select-Object FullName, LastWriteTime, Length | Sort-Object LastWriteTime -Descending | Export-Csv '!2023.01.24.AllFiles.csv' -NoTypeInformation -UseCulture
- 说明:
Length会作为新列添加到CSV末尾,排序逻辑保持按LastWriteTime降序不变,导出的CSV会包含文件完整路径、最后修改时间、文件大小三个字段。
二、TXT导出脚本修改
原命令仅输出文件路径,要同时添加文件大小,需遍历每个文件对象并组合路径与大小信息,修改后的命令如下:
Get-ChildItem -Filter '*.*' -Recurse -File | ForEach-Object { "$($_.FullName) | 文件大小: $($_.Length) 字节" } > !!2023.01.24.AllFiles.txt
如果需要更规整的表格格式输出,可改用Format-Table:
Get-ChildItem -Filter '*.*' -Recurse -File | Select-Object FullName, Length | Format-Table -AutoSize | Out-File '!!2023.01.24.AllFiles.txt' -Encoding UTF8
- 说明:第一种方式输出每行是路径+大小的文本,第二种方式会生成自动调整列宽的表格,
-Encoding UTF8可避免中文乱码问题。
内容的提问来源于stack exchange,提问作者ILoveMadoka
相关产品推荐
相关产品推荐

