批处理获取文件名并提取当前文件夹名

我想用批处理获取当前文件夹的文件并写入到txt里面,并将生成的txt文件的文件名指定为当前文件夹的名字。怎么实现

假设当前文件夹为aaa,且批处理文件在当前文件夹下,生成的txt文件也放在当前文件夹下的话:
@echo off
dir/b/s>aaa.txt
pause

如果不含子文件夹内容的话,/s参数可以省略
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-11-12
@Echo OffFor /f "tokens=*" %%i in ('dir /ad /b /s "%~dp0"') do (For /f "tokens=*" %%j in ('dir /a-d /b /s "%%i\*.*"') do (Ren "%%j" "%%~nxi%%~xj"Move "%%i\%%~nxi%%~xj" "D:\文件提取到此文件夹\"Rd /q "%%i"))Pause以上内容保存为批处理文件(xx.bat),和要提取文件的子文件夹放在一起即可,例如和文件夹1、文件夹2放在一起.默认保留文件后缀名,如果不保留文件后缀名请删除"%%~xj"追问

不好意思,不是太明白,我之前在百度里收到一个获取文件名的bat。
for /r %cd% %%a in (*.jpg) do echo %%~na >>生成文件.txt
现在想实现一个将“生成文件”的文件名可以根据当前文件夹的名字命名。
如当前文件夹名称为”公司“包含文件名分别为0~10的文件,获取内容并生成txt文件。

相似回答