Board logo

标题: [文本处理] [已解决]历遍文件夹生成目录的批处理代码能不能改成不用输入路径的? [打印本页]

作者: ww0000    时间: 2015-4-17 08:26     标题: [已解决]历遍文件夹生成目录的批处理代码能不能改成不用输入路径的?

本帖最后由 ww0000 于 2015-4-19 10:17 编辑

以下是获取指定文件夹及子文件夹下所有文件目录的代码,但是要手动输入路径,很麻烦,能不能改一下,改成与执行文件同目录?(也就是执行文件放哪里,与他同目录的文件夹全历遍)
  1. @echo off
  2. :: 判断输入路径是不是文件夹,如果是,则获取文件夹下的所有文件名(包括子文件夹下的)
  3. :: code by ZHEN CMD@XP 2009-04-07
  4. if exist list.txt del list.txt /q
  5. :input
  6. cls
  7. set input=:
  8. set /p input=Please input path:
  9. set "input=%input:"=%"
  10. :: 上面这句为判断%input%中是否存在引号,有则剔除。
  11. if "%input%"==":" goto input
  12. if not exist "%input%" goto input
  13. for %%i in ("%input%") do if /i "%%~di"==%%i goto input
  14. pushd %cd%
  15. cd /d "%input%">nul 2>nul || exit
  16. set cur_dir=%cd%
  17. popd
  18. :: %%~nxi只显示文件名,%%i显示带路径的文件信息
  19. for /f "delims=" %%i in ('dir /b /a-d /s "%input%"') do echo %%i>>list.txt
  20. if not exist list.txt goto no_file
  21. start list.txt
  22. exit
  23. :no_file
  24. cls
  25. echo %cur_dir% Folder does not have a separate document
  26. pause
复制代码

作者: pcl_test    时间: 2015-4-17 08:59

  1. @echo off
  2. (for /f "delims=" %%i in ('dir /a-d /s /b') do echo,%%~ni)>list.txt
  3. pause
复制代码

作者: ww0000    时间: 2015-4-17 11:31

回复 2# pcl_test


    谢谢老师!!!
作者: pcl_test    时间: 2015-4-17 12:59

问题得到解决后请在标题最前面注明[已解决]
http://www.bathome.net/thread-3473-1-1.html




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2