标题: [文件操作] 【已解决】 求助批处理搜索指定文件夹下的文件并重命名 [打印本页]
作者: 96321478 时间: 2022-4-1 10:27 标题: 【已解决】 求助批处理搜索指定文件夹下的文件并重命名
本帖最后由 96321478 于 2022-4-2 13:05 编辑
在C:\Users 或 D:\Users 下搜索 desktop\AA BB.exe 并重命名为CCDD.exe
参考了一下 http://bbs.bathome.net/thread-3465-1-1.html 中的方案五,没成功,,没看到任何结果
已解决,,参考10楼和8楼
作者: qixiaobin0715 时间: 2022-4-1 11:00
- @echo off
- cd/d "%homepath%\desktop"
- for /f "delims=" %%a in ('dir /b /a-d "AA BB.exe"') do (
- ren "%%a" "CCDD.exe"
- )
- pause
复制代码
作者: Batcher 时间: 2022-4-1 11:15
回复 1# 96321478 - @echo off
- if exist "C:\Users" (
- cd /d "C:\Users"
- ) else if exist "D:\Users" (
- cd /d "D:\Users"
- ) else (
- echo 找不到Users文件夹
- goto :End
- )
-
- for /f "delims=" %%i in ('dir /b /s /a-d ^| findstr /i /c:"Desktop\AA BB.exe"') do (
- ren "%%i" "CCDD.exe"
- )
-
- :End
- pause
复制代码
作者: 96321478 时间: 2022-4-1 12:20
回复 2# qixiaobin0715
你好,变量提示找不到路径,我是7x64系统
另外users可能在C 也可能在D,,变量好像不可行
作者: 96321478 时间: 2022-4-1 12:30
本帖最后由 96321478 于 2022-4-1 12:33 编辑
回复 3# Batcher
你好,,已测试,当存在C:\users\ 而其中不存在 \desktop\AA BB.exe 时 并不会继续判断D:\users\
不知道是否可以象你那个全盘搜索帖子中方案五那样,用FOR 进行搜索,查找到后再改名
在C:\users\ 中查找 \desktop\AA BB.exe
D:\users\ 中查找 \desktop\AA BB.exe
E:\users\ 中查找 \desktop\AA BB.exe
作者: 96321478 时间: 2022-4-1 13:04
回复 2# qixiaobin0715
我的是win7-64 单独cd /d "%homepath% 也会提示找不到路径
用 %USERPROFILE% 可以正常跳转
作者: qixiaobin0715 时间: 2022-4-1 13:18
回复 6# 96321478
系统变量平常用的少,想错了。%USERPROFILE%能用就行。
作者: Batcher 时间: 2022-4-1 13:32
回复 5# 96321478 - @echo off
- if exist "C:\Users" (
- call :Search "C:\Users"
- ) else if exist "D:\Users" (
- call :Search "D:\Users"
- ) else (
- echo 找不到Users文件夹
- )
- pause
- goto :eof
-
- :Search
- for /f "delims=" %%i in ('dir /b /s /a-d %1 ^| findstr /i /c:"Desktop\AA BB.exe"') do (
- ren "%%i" "CCDD.exe"
- )
复制代码
作者: 96321478 时间: 2022-4-2 11:27
回复 8# Batcher
你好 ,测试结果跟5楼一样。。网上找到个类似代码,修改了一下,基本可以实现想要的想法,,有个缺点就是,当desktop的子目录中也存在AA BB.EXE时,也给重命名了,,不知道怎么解决
set SrcDir=c:\users,d:\users,E:\users
for %%i in (%SrcDir%) do (
for /f "delims=" %%y in ('dir /a-d /s /b "%%~i\desktopo\AA BB.exe"') do (
ren "%%y" "CCDD.exe"
)
)
作者: qixiaobin0715 时间: 2022-4-2 11:35
按8楼的代码修改一下不就行了:- dir /a-d /s /b "%%~i\desktopo\AA BB.exe" ^| findstr /i /c:"Desktop\AA BB.exe"
复制代码
作者: 96321478 时间: 2022-4-2 13:03
回复 10# qixiaobin0715
OK了 ,按你和Batcher 的思路,,完美实现
感谢二位热心帮助,,
结帖。
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |