[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] [已解决]批处理如何提取最底层文件夹名称到文本?

本帖最后由 a6236130 于 2023-2-2 21:18 编辑

比如A是主文件夹,批处理在A里面,则提取当前目录下所有子文件夹里最底层文件夹的名称到文本txt中
       A/A1/BBB/CCC、
      A/A2/BBB/CCC/DDD,
      A/A3/BBB
谢谢!

感谢各位大哥!!

TOP

  1. @echo off
  2. (for /f "delims=" %%d in ('dir /b/s/ad') do (
  3. cd /d "%%~d"
  4. dir /b/ad|findstr ".*">nul||echo,%%d
  5. ))>"末级目录列表.txt"
复制代码

TOP

  1. PowerShell "dir -Literal '%~dp0' -Recurse -Dir | ?{!$_.GetDirectories().Count} | forEach{$_.FullName}"
复制代码

TOP

  1. @echo off
  2. for /d /r "%~dp0" %%i in (*) do (
  3.     set "flag="
  4.     for /d %%j in ("%%~i\*") do set "flag=1"
  5.     if not defined flag echo;%%i
  6. )
  7. pause
复制代码

TOP

  1. @echo off
  2. >new_txt.txt (for /f "delims=" %%i in ('dir /b /ad') do (
  3.         call :getfolder "%%~i" "d"
  4.         call echo %%d%%
  5. ))
  6. pause&exit
  7. :getfolder
  8. (for /f "delims=" %%a in ('dir /ad/b "%~1\"') do call :getfolder "%~1\%%a" %2)||set "%~2=%~1"&exit /b
复制代码

TOP

  1. @echo off
  2. for /f "delims=" %%a in ('dir /s /b /ad') do (
  3.     dir /b /ad "%%a"|findstr .>nul 2>nul
  4.     if errorlevel 1 echo,%%a
  5. )
  6. pause
复制代码

TOP

回复 1# a6236130
  1. @echo off
  2. rem 保存为ANSI编码格式
  3. setlocal enableDelayedExpansion
  4. cd /d "%~dp0"
  5. set A=%~f0
  6. (
  7. for /f "delims=" %%a in ('dir /b/s/ad^|sort/r') do (
  8. if "!A!" NEQ "%%~fa\" echo;%%~na
  9. set A=%%~dpa
  10. )
  11. )>dir_name.txt
  12. endlocal
复制代码

TOP

本帖最后由 77七 于 2023-2-2 00:49 编辑
  1. @echo off
  2. cd /d "%~dp0"
  3. for /f "delims=" %%i in ('dir /b /ad') do (
  4.         pushd "%%i"
  5.         set n=
  6.         for /f "delims=" %%a in ('dir /b /s /ad ^| sort /r') do (
  7.                 if not defined n (
  8.                         echo %%~na
  9.                         set n=1
  10.                 )
  11.         )
  12.         popd
  13. )>>名称.txt
  14. pause
复制代码

这样可以吗?
bat小白,请多指教!谢谢!

TOP

返回列表