批量提取文件名到Excel?5种方法总有一款适合你
作为经常需要整理文件的人,你是否也曾被满屏的文件名搞得头大?手动一个个复制粘贴到Excel?效率低到怀疑人生!别担心,今天就来分享5种高效方法,帮你轻松实现批量提取文件名到Excel,无论你是技术小白还是效率达人,都能找到适合自己的方案!
核心思路: 获取文件名列表 -> 输出为文本或结构化数据 -> 导入Excel。
方法一:免费!Windows 命令行 (CMD/PowerShell) - 基础但强大
适用场景: 熟悉基础命令行操作,追求原生免费方案。
优点: 无需安装额外软件,系统自带。
缺点: 需要输入命令,对新手略有门槛;默认输出格式较简单(可处理)。
操作步骤:
打开需要提取文件名的文件夹。
在文件夹地址栏输入 cmd 或 powershell 然后按回车,直接在该路径打开命令窗口。
CMD方法:
输入命令:dir /b > filenames.txt 然后回车。
解释:dir 列出文件,/b 表示使用空格式(无标题信息或摘要),> 将结果输出到文件,filenames.txt 是生成的文本文件名。
PowerShell方法 (更推荐):
输入命令:Get-ChildItem -Name > filenames.txt 然后回车。
解释:Get-ChildItem 获取子项目(文件/文件夹),-Name 只输出名称,> 输出到文件。
执行后,文件夹内会生成一个 filenames.txt 文件,里面就是所有文件名列表。
打开Excel,选择“数据”选项卡 -> “获取数据” -> “自文件” -> “从文本/CSV”。
找到并选择 filenames.txt 文件导入。Excel通常能自动识别分隔符(这里就是换行符),将每个文件名导入到单独的一行。
(可选)优化: 如果只想提取特定类型文件(如 .xlsx),在命令中加入通配符,例如:
CMD: dir /b *.xlsx > excel_files.txt
PowerShell: Get-ChildItem -Name *.xlsx > excel_files.txt
方法二:高效!飞然批量改名软件 - 功能集成,一步到位
适用场景: 需要更直观界面和额外功能(如同时改名、提取其他信息),追求效率。
优点: 界面友好,功能丰富(提取文件名是其核心功能之一),支持筛选、预览,可直接导出Excel格式。
缺点: 第三方软件,需要下载安装(有免费版,但注意高级功能可能需要付费)。
操作步骤:
下载并安装飞然批量改名软件。
打开软件,将需要提取文件名的文件夹拖入软件窗口,或通过“添加文件夹”按钮导入。
软件会立即显示文件夹内所有文件的列表,包含文件名、扩展名、大小、日期等信息。
关键步骤: 在软件界面找到“导出列表”或类似功能按钮(通常在菜单栏或工具栏,图标可能像Excel表格或导出箭头)。
选择导出格式为“Excel” (.xlsx 或 .xls)。
(可选)在导出前,可以利用软件的筛选功能只提取特定文件(如按类型、大小、日期)。
选择保存位置,点击“导出”或“确定”。软件会直接生成一个Excel文件,文件名通常整齐地排列在第一列。
方法三:便捷!光速批量重命名软件 - 简洁易用,快速导出
适用场景: 偏好轻量级、操作简单的工具,快速完成提取任务。
优点: 软件小巧,启动快,操作流程简单直接。
缺点: 功能相对飞然可能少一些(但核心提取功能足够)。
操作步骤:
下载并安装光速批量重命名软件。
打开软件,点击“添加文件”或“添加文件夹”导入目标文件。
文件列表会显示在软件主窗口。
关键步骤: 在软件界面寻找“导出”、“保存列表”或“复制列表”功能。光速通常有比较明显的按钮。
选择“导出到Excel”或类似选项(有时可能是导出为TXT/CSV,但Excel都能打开)。
选择保存位置和文件名,点击保存。稍等片刻即可获得包含文件名的Excel文件。
方法四:免费!创建文件清单 (File List) - 系统隐藏技能
适用场景: 不想装软件,也不想敲命令,接受中间步骤。
优点: 纯系统功能,完全免费,操作直观。
缺点: 步骤稍多,生成的是非结构化文本,导入Excel后需要简单处理。
操作步骤:
打开需要提取文件名的文件夹。
按 Ctrl + A 全选所有文件。
按住 Shift 键不放,同时右键点击任意一个被选中的文件。
在出现的右键菜单中,选择“复制为路径”。(注意:必须按住Shift才会出现这个选项!)
打开记事本 (Notepad)。
在记事本中按 Ctrl + V 粘贴。你会看到所有文件的完整路径,每行一个。
保存这个记事本文件,例如 filepaths.txt。
打开Excel,新建一个工作簿。
将 filepaths.txt 文件的内容粘贴到Excel的第一列(比如A列)。
关键处理: 现在A列是包含路径的全名。我们需要提取纯文件名。
假设路径格式是 C:\Folder\Subfolder\Filename.ext
在B1单元格输入公式提取文件名(含扩展名):
=RIGHT(A1, LEN(A1) - FIND("|", SUBSTITUTE(A1, "\", "|", LEN(A1) - LEN(SUBSTITUTE(A1, "\", ""))))) 这个公式比较复杂,它找到最后一个反斜杠 \ 的位置,然后截取后面的字符串。
或者,更简单但需两步:
在B1输入:=TRIM(RIGHT(SUBSTITUTE(A1, "\", REPT(" ", 255)), 255)) 然后向下填充。这会得到 Filename.ext。
(可选)在C1输入 =LEFT(B1, FIND(".", B1) - 1) 提取主文件名 (Filename),在D1输入 =RIGHT(B1, LEN(B1) - FIND(".", B1)) 提取扩展名 (ext)。
复制B列(或C、D列),右键选择“粘贴为值”到新的位置,删除原始的A列(包含路径的列)。现在你得到的就是干净的文件名列表了。
方法五:免费!批处理文件 (.bat) - 一键生成文本文件
适用场景: 需要重复操作,追求自动化,能接受创建简单脚本。
优点: 创建一次脚本,以后双击即可运行生成列表;可定制性强。
缺点: 需要创建文件,生成的是文本文件,仍需导入Excel。
操作步骤:
在目标文件夹内,右键 -> 新建 -> 文本文档。
打开这个新建的文本文件,输入以下内容: markdown
markdown
复制
markdown
复制
@echo off dir /b > FileList.txt exit
或者用PowerShell命令(保存为 .ps1 文件,执行策略可能需调整): markdown
markdown
复制
markdown
复制
Get-ChildItem -Name | Out-File -FilePath .\FileList.txt
将文本文件另存为,在“保存类型”下拉框中选择“所有文件 (.)”,文件名输入 GetFileList.bat (如果用CMD命令) 或 GetFileList.ps1 (如果用PowerShell命令)。确保文件名后缀正确。
双击运行这个 .bat 或 .ps1 文件。
运行后,会在同一文件夹生成一个 FileList.txt 文件,包含所有文件名。
按照 方法一 中第6-7步的说明,将 FileList.txt 导入Excel即可。
写在最后
选择建议:
追求极简免费 & 不怕命令: 选 方法一 (PowerShell)。
需要界面 & 多功能 & 直接导出Excel: 选 方法二 (飞然批量改名软件) 或 方法三 (光速批量重命名)。
完全不想装软件 & 不想敲命令: 选 方法四 (Shift+右键复制路径),虽然导入后需要处理一下路径。
需要重复操作 & 自动化: 选 方法五 (批处理文件)。
注意事项:
导出到Excel后,可能需要调整列宽。
如果文件名包含特殊字符或逗号,在导入TXT/CSV时可能需要指定正确的分隔符和文本限定符。
使用第三方软件时,注意来源可靠,留意免费版的功能限制。
方法四和五生成的文本文件,默认编码可能是ANSI。如果文件名包含大量非英文字符(如中文),在导入Excel时如果出现乱码,尝试在导入时选择正确的文件原始编码(通常是ANSI或UTF-8)。
希望这5种方法能帮你彻底解决文件名批量提取的烦恼!哪个方法你用起来最顺手?或者你有更妙的招数?欢迎在评论区分享讨论!
@WPS产品体验官