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

[文件操作] [分享]批处理获取每个文件夹最后一张图片的文件名

【问题描述】

假设我有100个文件夹 各文件夹中都有多张图片
我怎么获取这100个文件夹中每个文件夹最后一张图片的文件名
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

【解决方案】

test-1.bat
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. for /f "delims=" %%i in ('dir /b /ad') do (
  5.     for /f "delims=" %%j in ('dir /b /a-d "%%i"') do (
  6.         set "FileName=%%j"
  7.     )
  8.     echo [%%i]: !FileName!
  9. )
  10. pause
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

test-2.bat
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. for /d %%i in (*) do (
  5.     for /f "delims=" %%j in ('dir /b /a-d "%%i"') do (
  6.         set "FileName=%%j"
  7.     )
  8.     echo [%%i]: !FileName!
  9. )
  10. pause
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 3# Batcher


    大哥,如果是要获取倒数第二个呢?获取第二个并且将其复制到指定路径,保持原目录结构...

TOP

回复 4# a6236130


倒数第二个.bat
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. for /f "delims=" %%i in ('dir /b /ad') do (
  5.     for /f "delims=" %%j in ('dir /b /a-d "%%i"') do (
  6.         set "File0=!File1!"
  7.         set "File1=%%j"
  8.     )
  9.     echo [%%i]: !File0!
  10. )
  11. pause
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

取倒数第k个文件,这里k=2,即倒数第2个文件:
  1. @echo off
  2. set /a k=2,n=0
  3. cd /d "%~dp0"
  4. setlocal enabledelayedexpansion
  5. for /f "delims=" %%i in ('dir /b /ad') do (
  6.     for /f "delims=" %%a in ('dir /b /a-d "%%i"^|find /v /c ""') do set /a m=%%a-k
  7.     for /f "delims=" %%j in ('dir /b /a-d "%%i"') do (
  8.         if !m! equ !n! set "FileName=%%j"
  9.         set /a n+=1
  10.     )
  11.     echo [%%i]: !FileName!
  12.     set n=0
  13. )
  14. pause
复制代码

TOP

回复 6# qixiaobin0715


    实现了部分功能,我的意思是获取到倒数第二个文件后,将其文件复制到指定文件夹中(并且保持文件目录结构)。

TOP

回复 7# a6236130


参考:批处理复制文件保留目录结构的几种方法
https://mp.weixin.qq.com/s/Xl3p-ZinO4FT7jBRDZyU2Q

你自己尝试代码遇到具体问题的话,可以再回来讨论。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表