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

如何用PowerShell递归将文件夹内容输出到独立TXT文件?

实现方案

需求匹配版本(仅处理根目录下的直接子文件夹)

以下命令会遍历指定根目录下的所有直接子文件夹,将每个文件夹内的文件按LastWriteTime排序后,写入与文件夹同名的TXT文件(文件生成在根目录下):

# 定义根目录路径
$rootDir = 'C:\Users\hmd\Desktop\PSTest'

# 遍历根目录下的直接子文件夹
Get-ChildItem -Path $rootDir -Directory | ForEach-Object {
    # 拼接输出文件路径:根目录\文件夹名.txt
    $outputFile = Join-Path -Path $rootDir -ChildPath "$($_.Name).txt"
    # 获取当前文件夹内的文件→按最后修改时间排序→提取文件名→写入TXT
    Get-ChildItem -Path $_.FullName -File | Sort-Object LastWriteTime | Select-Object -ExpandProperty Name | Out-File -FilePath $outputFile
}

递归处理所有层级子文件夹版本

如果需要处理所有深度的子文件夹(比如Proj1下还有子文件夹时,也为其生成对应TXT),可以添加-Recurse参数,同时将TXT文件生成在对应子文件夹的同级目录:

$rootDir = 'C:\Users\hmd\Desktop\PSTest'

# 递归遍历所有层级的子文件夹
Get-ChildItem -Path $rootDir -Directory -Recurse | ForEach-Object {
    # 输出文件路径:子文件夹的父目录\文件夹名.txt
    $outputFile = Join-Path -Path $_.Parent.FullName -ChildPath "$($_.Name).txt"
    Get-ChildItem -Path $_.FullName -File | Sort-Object LastWriteTime | Select-Object -ExpandProperty Name | Out-File -FilePath $outputFile
}

关键说明

  • -Directory参数:仅筛选文件夹,避免处理文件
  • Sort-Object LastWriteTime:按文件最后修改时间排序(默认升序,如需降序可加-Descending)
  • Select-Object -ExpandProperty Name:只提取文件名,排除其他文件属性
  • Out-File:替代重定向符>,更稳定地处理编码和输出格式

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 08:10:54