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

[文件操作] [已解决]批处理用wind删除文件名中多余文字,命令语法不正确?

  1. for /f "delims=" %%1 in ('dir /s /a /b') do (set wind=%%1
  2. ren "%%~1" "!wind:[Dymy]=!")
复制代码
就是以上代码,当我在dir后加 /s后就出现错误了,去掉便没问题.
但我想要处理子文件夹里的东西(全部子文件夹)
该怎么办呢?
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

感谢else!非常感谢!!

TOP

之所以加上/s参数会出错是由于dir /s /b结合会返回文件的完全路径(完全路径:就是包含驱动、相对路径、文件名的路径),而ren的语法却是 ren “完全路径or文件名” 文件名(第二个必须是不带路径的文件名),而%%1获取的是完全路径,所以要用%%~nxi获取文件名。

TOP

回复 4# Hello123World


    感谢说明!
受教了!

TOP

返回列表