下面是"bat 批量提取指定目录下的文件名"的完整攻略:
1. 确定要提取文件名的目录
首先需要明确的是,准备提取的文件名存储在哪个目录里。可以是本地目录、网络共享目录、云存储目录等。
2. 新建批处理文件
接下来需要新建一个批处理文件,后缀名为.bat。可以使用记事本等文本编辑器进行编写。下面给出一个简单的示例代码:
@echo off
setlocal enabledelayedexpansion
set dir_path=C:\Users\Admin\Documents
pushd %dir_path%
for %%i in (*) do (
set "file_name=%%~ni"
echo !file_name!
)
popd
代码说明:
- "@echo off"表示关闭脚本的命令行回显。
- "setlocal enabledelayedexpansion"开启delayed expansion功能。
- "set dir_path=xxx"设置要提取文件名的目录。
- "pushd %dir_path%"将目录dir_path入栈。
- "for %%i in ()"中的表示该目录下所有文件,可以替换为具体的文件名或者文件名通配符。
- "set "file_name=%%~ni""提取文件名并存储到变量file_name中,“%%~ni”表示去掉文件扩展名后的文件名。
- "echo !file_name!"输出提取的文件名,需要使用!file_name!而非%file_name%,因为这里开启了delayed expansion。
3. 运行批处理文件
保存批处理文件后,双击运行即可,执行结果输出目标目录中所有文件的文件名。例如,我们把上述批处理代码保存为test.bat,并将dir_path设置为D:\File夹,运行结果如下所示:
file1
file2
file3
另外,如果你想把提取的文件名导出到文本文件中,可以修改代码如下:
@echo off
setlocal enabledelayedexpansion
set dir_path=C:\Users\Admin\Documents
pushd %dir_path%
for %%i in (*) do (
set "file_name=%%~ni"
>>file_names.txt echo !file_name!
)
popd
这样,结果就会被导出到script所在目录下的file_names.txt文本文件中,每个文件名占一行。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:bat 批量提取指定目录下的文件名 - Python技术站