Board logo

标题: [文本处理] 批处理如何修改当前目录以及子目录中所有txt文本的扩展名为.bat [打印本页]

作者: yunzhong    时间: 2011-1-5 14:28     标题: 批处理如何修改当前目录以及子目录中所有txt文本的扩展名为.bat

本帖最后由 pcl_test 于 2017-4-13 11:30 编辑

假如有1文件夹何其子目录2,在1目录中有a.txt,在2目录中有b.txt
需要把txt扩展名改为bat

我试过,类似
        set var=%%~ni
        set var=%%var:.txt=%%
        ren %%i %%var%%%%~xi

不过只是一闪而过
作者: hanyeguxing    时间: 2011-1-5 14:34

  1. @echo off
  2. for /r %%a in (*.txt) do ren "%%a" "%%~na.bat"
复制代码
修改当前目录以及子目录中所有 .txt 为 .bat
作者: yunzhong    时间: 2011-1-5 15:39

原来这么简单啊!看来想多
谢谢了!
作者: yunzhong    时间: 2011-1-5 15:44

或者应该不是想多了,应该就是本来还不会,一菜鸟
作者: qyjlyj521    时间: 2011-1-6 21:04

又学会一招  ,不过 ,我不明白  那参数  是什么意思
作者: hanyeguxing    时间: 2011-1-6 21:30     标题: 回复 5楼 的帖子

1,ren的语法:ren [drive:][path] filename1 filename2
[drive:][path] filename1
指定要重命名的文件或文件集的位置和名称。
filename2
为文件指定新的名称。如果使用通配符(* 和 ?),filename2 为多个文件指定新名称。重新命名文件时不能指定新的驱动器或路径。
2,for 的变量增强替换:%~nI 只将 %I 展开到文件名。




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