[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
问题是:代码中 dir /ad/b又不能加参数 /s ,提示说是语法错误??

语法错误应该不是 /s 参数的原因。
以这个目录为例:
C:\test\folder
你的代码会先把 C:\test 重命名成 C:\1test
然后再尝试重命名 C:\test\folder,因为 test 文件夹已经不存在了,所以出错。

TOP

编写代码时 何时要用到变量增加扩展的格式,有没有相应的文章或教程

http://bbs.bathome.net/thread-2899-1-1.html

TOP

回复 9# lzyecho
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "PathLast="
  4. set "NumCounter="
  5. for /f "delims=" %%a in ('dir /ad /b /s ^| sort /r') do (
  6.     set "file=%%a"
  7.     set "name=%%~nxa"
  8.     set "PathThis=%%~dpa"
  9.     if !PathThis! neq !PathLast! (
  10.         set "NumCounter=0"
  11.     )
  12.     set /a NumCounter+=1
  13.     set "f=!file:%~dp0=!"
  14.     ren "!file!" "!NumCounter!!name!"
  15.     set "PathLast=%%~dpa"
  16. )
复制代码

TOP

TOP

返回列表