使用 BAT 批处理脚本在 Windows 中批量提取文件名
使用 BAT 批处理脚本在 Windows 中批量提取文件名
在Windows操作系统中,批处理脚本(Batch Script,简称.bat文件)是一种强大的工具,可以自动执行复杂的任务,如文件管理、系统配置等。对于需要频繁处理大量文件的用户来说,掌握如何使用批处理脚本批量提取文件名将大大提高工作效率。
在Windows操作系统中,批处理脚本(Batch Script,简称.bat文件)是一种简单的文本文件,包含一系列命令行指令。这些指令可以自动执行复杂的任务,如文件管理、系统配置等。对于需要频繁处理大量文件的用户来说,编写一个批处理脚本来批量提取文件名是非常有用的。本教程将指导您如何创建和使用这样的脚本。
准备工作
某些操作可能需要以管理员身份运行批处理脚本。
确定要从中提取文件名的文件夹路径。
决定将提取的文件名保存到哪里以及采用何种格式(例如纯文本文件或CSV文件)。
创建 BAT 批处理脚本
打开记事本或其他文本编辑器:这是编写批处理脚本的第一步。您可以直接从开始菜单搜索“记事本”并打开它。
下面是一个简单的批处理脚本示例,它会遍历指定目录中的所有文件,并将其名称(不带扩展名)写入一个名为 filenames.txt 的文件中。
@echo off
setlocal enabledelayedexpansion
REM 设置源文件夹路径
set "source_folder=C:\path\to\your\folder"
REM 设置输出文件路径
set "output_file=C:\path\to\output\filenames.txt"
REM 清空或创建输出文件
> "%output_file%" echo.
REM 遍历文件夹内的所有文件
for %%f in ("%source_folder%\*") do (
REM 提取文件名不带扩展名
set "filename=%%~nf"
REM 如果不是文件夹,则写入文件名到输出文件
if not "%%~af"=="d" (
echo !filename! >> "%output_file%"
)
)
echo 文件名提取完成!
pause
自定义参数:
替换 C:\path\to\your\folder 为实际的目标文件夹路径。
修改 C:\path\to\output\filenames.txt 以指定向何处保存结果文件。
将上述代码复制粘贴到记事本中后,点击“文件” -> “另存为”,然后选择所有文件类型,并将文件命名为 extract_filenames.bat 或其他你喜欢的名字,但确保扩展名为 .bat。
运行批处理脚本
最简单的方法是直接双击刚刚创建的 .bat 文件。这将启动批处理程序并按照脚本中的指示进行操作。如果遇到权限问题或希望确保脚本拥有足够的权利来访问所有文件,请右键单击 .bat 文件并选择“以管理员身份运行”。
也可以通过命令提示符窗口手动输入批处理脚本的位置来运行它。这样做的好处是可以更灵活地控制环境变量和其他设置。
扩展功能
如果您想要进一步增强这个脚本的功能,比如支持子文件夹、排除特定类型的文件、添加时间戳等,可以通过以下方式实现:
递归遍历子文件夹:使用 /R 参数与 FOR 循环结合,可以递归地处理整个树状结构。
for /R "%source_folder%" %%f in (*) do (
...
)
过滤文件类型:可以在 FOR 循环条件中加入额外的筛选规则,如只处理 .txt 文件。
for %%f in ("%source_folder%\*.txt") do (
...
)
添加时间戳:使用 %date% 和 %time% 变量可以在每条记录前加上当前日期和时间信息。
echo !date! !time! - !filename! >> "%output_file%"
通过以上步骤,您已经学会了如何编写一个简单的批处理脚本来批量提取文件名。根据具体需求调整脚本内容,可以使您的工具更加个性化和强大。