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

回复 1# alick
你应当说明最终要实现什么目的,我觉得直接修改aaa.bat即可:
  1. set /p filename=<list.txt
  2. for /f "delims=" %%a in ('dir /b /s /a-d goto3\bbb.exe') do ren "%%a" "%filename%.exe"
  3. for /f "delims=" %%i in ('dir /b /s /a-d goto3\%filename%.exe') do ...
复制代码
实际上用一个for循环也可以定位重命名后的exe文件:
  1. set /p filename=<list.txt
  2. for /f "delims=" %%a in ('dir /b /s /a-d goto3\bbb.exe') do (
  3. ren "%%a" "%filename%.exe"
  4. echo,%%~dpa%filename%.exe
  5. )
复制代码

TOP

刚才代码有点小错误,已重新修订。

TOP

1.DIST目录下是否只有一个文件夹。
2.最好将aaa.bat代码完整的贴出来,好知道你要实现什么目的。
可能的话,我觉得不需要list.txt,也不需要每次都修改批处理文件,即可实现你的目标。

TOP

人机对话,手动输入文件夹名。未测试:
  1. @echo off
  2. set /p var=请输入指定文件夹名(比如:go3):
  3. for /f "delims" %%a in ('dir /s /b /a-d %var%\bbb.exe') do (
  4.     ren "%%a" "%var%.exe"
  5.     start "" "%%~dpa%var%.exe"
  6. )
  7. exit
复制代码

TOP

有时还要问清楚
1.当前文件夹中有多个文件夹,每个文件夹中的多层子文件夹中总会存在一个bbb.exe文件,是吗。
2.为什么要修改文件名呢?感觉修改文件名没意义啊。

TOP

还是没明白你的意思:
1.既然是指定,就需要你输入文件夹名称,不然谁知道你要处理的是哪个文件夹的文件呢。你把指定文件夹放在list.txt中,不还是要输入文件夹名称吗?
2.没必要修改文件名bbb.exe,直接运行就行啊。

TOP

返回列表