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

真心不习惯用goto和call语句,这样不知可否,未测试:
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. del /s /a /f *.torrent
  4. for /f "delims=" %%i in ('dir /b /ad') do (
  5.     set n=0
  6.     pushd "%%i"
  7.     for /f "delims=" %%j in ('dir /b') do set /a n+=1
  8.     if !n! equ 1 (
  9.         for /f "delims=" %%k in ('dir /b /a-d 2^>nul') do (
  10.             set /a "_%%k+=1"
  11.             if "!_%%k!"=="1" (
  12.                 move "%%k" "%~dp0"
  13.             ) else (
  14.                 move "%%k" "%~dp0\%%~nk!_%%k!%%~xk"
  15.             )
  16.         )
  17.     )
  18.     popd
  19.     rd "%%i" 2>nul
  20. )
  21. pause
复制代码
善意提醒:自己根据情况看看第3行del命令放在何处符合要求。上面会删除当前目录下的所有有关文件,包括子目录。
1

评分人数

TOP

回复 5# thp2008
代码第14行把扩展名加上就行啊,还是要懂一点批处理基础知识的。

TOP

本帖最后由 qixiaobin0715 于 2023-12-4 15:15 编辑

回复 4# qixiaobin0715
需要提醒的一点是使用此代码时,文件名中不能含有“+-...”等运算符,这些符号在第10行代码中为非法变量名。

TOP

返回列表