无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 858|回复: 54
打印 上一主题 下一主题

[求助] 新手求助,求一个批处理

[复制链接]
跳转到指定楼层
1#
发表于 2025-2-7 11:47:37 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
新手,不会批处理,求一个批处理
给定一个txt文本文件,按照文本文件列出的文件名在\Windows\System32\zh-CN目录中搜索同名的.mui文件,如有,返回一个包含所有.mui文件名的文本文件.不需要复制文件.
谢谢!
40#
发表于 2025-2-8 17:17:47 | 只看该作者


不考虑 Windows\System32\drivers\zh-CN\*.sys.mui 情形?

哈哈……
回复

使用道具 举报

39#
发表于 2025-2-8 16:14:33 | 只看该作者

一个好的规划,新建一个工作目录,list.txt放在此目录根部,镜像文件也放在根部,然后挂载镜像到本目录文件夹,如MOUNT,查找后卸载镜像
回复

使用道具 举报

38#
发表于 2025-2-8 15:46:55 | 只看该作者

可能要考虑复杂些
一种情形是C盘
另一种情形是ISO映像install.wim挂载到D盘或者E盘的某个文件夹
等等
回复

使用道具 举报

37#
 楼主| 发表于 2025-2-8 15:21:39 | 只看该作者
hilsonma 发表于 2025-2-8 15:06
难怪,我原来以为文本里的内容只是文件名的,不包含路径的,现在修改如下:

谢谢大佬指点!

点评

不考虑 Windows\System32\drivers\zh-CN\*.sys.mui 情形? 哈哈……  详情 回复 发表于 2025-2-8 17:17
一个好的规划,新建一个工作目录,list.txt放在此目录根部,镜像文件也放在根部,然后挂载镜像到本目录文件夹,如MOUNT,查找后卸载镜像  详情 回复 发表于 2025-2-8 16:14
回复

使用道具 举报

36#
发表于 2025-2-8 15:06:16 | 只看该作者
本帖最后由 hilsonma 于 2025-2-8 15:16 编辑
youxia1220 发表于 2025-2-8 13:01
文本文件list.txt盘符为E盘(这个随意,可以修改bat文件中文本文件路径),为简单起见,只查找C:\windows\syst ...

难怪,我原来以为文本里的内容只是文件名的,不包含路径的,现在修改如下:
  1. @echo off
  2. del /q mui.txt
  3. for /f %%I in (list.txt) do if exist %%~dpI\zh-cn\%%~nxI.mui echo %%~dpI\zh-cn\%%~nxI.mui>>mui.txt
  4. if exist mui.txt (start mui.txt) else (echo 没有找到相关的mui文件.&pause)
复制代码

点评

谢谢大佬指点!  详情 回复 发表于 2025-2-8 15:21
回复

使用道具 举报

35#
 楼主| 发表于 2025-2-8 13:30:36 | 只看该作者
hilsonma 发表于 2025-2-8 12:33
\Windows\System32\zh-CN 是在C盘吗?
那个固定的文本文件在哪个盘哪个目录什么文件名?
以及固定文件 ...

还有一种特殊情况,需要返回后缀为_loc的文件名,而且和zh-cn文件夹不在同一目录下.如:
c:\Windows\System32\DriverStore\FileRepository\netvwifibus.inf_amd64_ab4e111fe8221178\netvwifibus.inf
返回的文件名为:
c:\Windows\System32\DriverStore\zh-CN\netvwifibus.inf_loc
这种文件很少,手工处理就i好了.
回复

使用道具 举报

34#
 楼主| 发表于 2025-2-8 13:01:54 | 只看该作者
本帖最后由 youxia1220 于 2025-2-8 13:04 编辑

文本文件list.txt盘符为E盘(这个随意,可以修改bat文件中文本文件路径),为简单起见,只查找C:\windows\system32\目录下dll,exe,cpl等扩展名文件在C:\windows\system32\ch-ZN文件夹中同名后缀为mui文件,若有,返回mui文件列表并生成mui.txt文本文件.
如有可能,给定文本文件list.txt不局限于C:\windows\system32\一个路径,而是包含多个路径,对于文本文件中的任意文件,能否首先查找同级目录下是否存在zh-CN文件夹,若有,在zh-CN文件夹中查找同名后缀为mui文件, 返回mui文件路径文件名并生成mui.txt文本文件.
list.txt文本文件示例:
c:\Windows\explorer.exe
c::\Windows\Branding\Basebrd\basebrd.dll
C:\Windows\System32\drivers\acpiex.sys
c:\Windows\System32\Windows.StateRepositoryBroker.dll
返回的mui.txt文件示例:
c:\Windows\zh-cn\explorer.exe.mui
c:\Windows\Branding\Basebrd\zh-cn\basebrd.dll.mui
C:\Windows\System32\drivers\zh-cn\acpiex.sys.mui
c:\Windows\System32\zh-cn\Windows.StateRepositoryBroker.dll.mui

点评

难道不考虑 mun 文件么,呵呵  发表于 2025-2-8 16:33
难怪,我原来以为文本里的内容只是文件名的,不包含路径的,现在修改如下:  详情 回复 发表于 2025-2-8 15:06
回复

使用道具 举报

33#
发表于 2025-2-8 12:33:39 | 只看该作者
本帖最后由 hilsonma 于 2025-2-8 12:36 编辑

\Windows\System32\zh-CN 是在C盘吗?
那个固定的文本文件在哪个盘哪个目录什么文件名?
以及固定文件的内容能不能展示一下(只需要一部分)

点评

还有一种特殊情况,需要返回后缀为_loc的文件名,而且和zh-cn文件夹不在同一目录下.如: c:\Windows\System32\DriverStore\FileRepository\netvwifibus.inf_amd64_ab4e111fe8221178\netvwifibus.inf 返回的文件名为:  详情 回复 发表于 2025-2-8 13:30
回复

使用道具 举报

32#
 楼主| 发表于 2025-2-8 12:18:55 | 只看该作者
hilsonma 发表于 2025-2-8 12:14
这个文本文件的完整路径是什么?(盘符及各级目录及文件名扩展名)

C盘

点评

可能要考虑复杂些 一种情形是C盘 另一种情形是ISO映像install.wim挂载到D盘或者E盘的某个文件夹 等等  详情 回复 发表于 2025-2-8 15:46
文本文件list.txt盘符为E盘(这个随意,可以修改bat文件中文本文件路径),为简单起见,只查找C:\windows\system32\目录下dll,exe,cpl等扩展名文件在C:\windows\system32\ch-ZN文件夹中同名后缀为mui文件,若有,返回mui文  详情 回复 发表于 2025-2-8 13:01
\Windows\System32\zh-CN 是在C盘吗? 那个固定的文本文件在哪个盘哪个目录什么文件名?  详情 回复 发表于 2025-2-8 12:33
回复

使用道具 举报

31#
发表于 2025-2-8 12:14:54 | 只看该作者
youxia1220 发表于 2025-2-8 08:53
刚刚试了,就一个固定的文本文件,二种都没有mui.txt输出.

这个文本文件的完整路径是什么?(盘符及各级目录及文件名扩展名)

给定一个txt文本文件,按照文本文件列出的文件名在\Windows\System32\zh-CN目录中搜索同名的.mui文件

\Windows\System32\zh-CN 是在哪个盘?

点评

C盘  详情 回复 发表于 2025-2-8 12:18
回复

使用道具 举报

30#
发表于 2025-2-8 11:11:25 | 只看该作者
youxia1220 发表于 2025-2-7 19:04
手搓PE,给dll,exe,cpl等文件找配对的mui文件.


嘿嘿,亏你提醒,我的批处理少了对cpl的处理。马上加上,嘿嘿……
回复

使用道具 举报

29#
发表于 2025-2-8 10:28:24 | 只看该作者
窄口牛 发表于 2025-2-8 09:46
写了啥,我搞登陆网站的vbs,就是繁忙,再试,也不知道是真忙还是难度超纲。


如果是繁忙,应该是真忙;估计是被持续攻击
回复

使用道具 举报

28#
发表于 2025-2-8 09:46:26 来自手机 | 只看该作者
martin313 发表于 2025-2-7 14:24
我已经让 AI 帮我解决了2个问题了,搞成了2个比较复杂的批处理。比楼主的问题,复杂多了。

写了啥,我搞登陆网站的vbs,就是繁忙,再试,也不知道是真忙还是难度超纲。

点评

如果是繁忙,应该是真忙;估计是被持续攻击  详情 回复 发表于 2025-2-8 10:28
回复

使用道具 举报

27#
发表于 2025-2-8 09:09:29 来自手机 | 只看该作者
要在几个盘查没说清啊
回复

使用道具 举报

26#
 楼主| 发表于 2025-2-8 08:53:29 | 只看该作者

刚刚试了,就一个固定的文本文件,二种都没有mui.txt输出.

点评

这个文本文件的完整路径是什么?(盘符及各级目录及文件名扩展名) \Windows\System32\zh-CN 是在哪个盘?  详情 回复 发表于 2025-2-8 12:14
回复

使用道具 举报

25#
 楼主| 发表于 2025-2-8 08:48:46 | 只看该作者
hilsonma 发表于 2025-2-8 00:21
楼主的应用场景没有表述清楚。给定的文本文件是一个还是多个,文本文件名是固定的还是变化的,文本内容是现 ...

谢谢!

点评

刚刚试了,就一个固定的文本文件,二种都没有mui.txt输出.  详情 回复 发表于 2025-2-8 08:53
回复

使用道具 举报

24#
发表于 2025-2-8 05:31:18 | 只看该作者
谢谢楼主分享
回复

使用道具 举报

23#
发表于 2025-2-8 00:21:36 | 只看该作者
本帖最后由 hilsonma 于 2025-2-8 00:40 编辑

楼主的应用场景没有表述清楚。给定的文本文件是一个还是多个,文本文件名是固定的还是变化的,文本内容是现成的还是楼主多次编辑多次搜索的,根据这些不同所制作的批也有不同的应对。
下面是适用于多个给定的文本的批
  1. @echo off
  2. if %1.==. (echo.&set /p lst=请将查找清单文本文件拖放到本窗口后按回车键:) else set lst=%1
  3. del /q mui.txt >nul 2>nul
  4. for /f %%a in (%lst%) do if exist c:\windows\system32\zh-cn\%%a.mui echo %%a.mui>>mui.txt
复制代码


如果是只有一个固定文件名的文本文件,假设文本文件名为list.txt,放在跟批处理同一个文件夹,那么批如下:
  1. @echo off
  2. del /q mui.txt >nul 2>nul
  3. for /f %%a in (list.txt) do if exist c:\windows\system32\zh-cn\%%a.mui echo %%a.mui>>mui.txt
复制代码

点评

谢谢!  详情 回复 发表于 2025-2-8 08:48
回复

使用道具 举报

22#
发表于 2025-2-7 19:52:30 | 只看该作者
参观学习
回复

使用道具 举报

21#
 楼主| 发表于 2025-2-7 19:33:57 | 只看该作者
martin313 发表于 2025-2-7 19:26
那我感觉这个问题还不够复杂化

我前几天让deepseek干的活,比你这个复杂了。就是根据提供的txt文件 ...

发出来参观参观.

点评

你一样可以让DS干活的  发表于 2025-2-7 20:39
回复

使用道具 举报

20#
发表于 2025-2-7 19:26:27 | 只看该作者
本帖最后由 martin313 于 2025-2-7 19:28 编辑
youxia1220 发表于 2025-2-7 19:04
手搓PE,给dll,exe,cpl等文件找配对的mui文件.


那我感觉这个问题还不够复杂化

我前几天让deepseek干的活,比你这个复杂了。就是根据提供的txt文件,比如按下述清单
Windows\System32\appwiz.cpl
Windows\System32\desk.cpl
Windows\System32\bthprops.cpl
Windows\System32\FirewallControlPanel.dll
Windows\System32\inetcpl.cpl
Windows\System32\hdwwiz.cpl

自动提取这些文件,并自动提取对应的mui、mun等文件到我指定的目录文件夹中,这些提取到的文件目录结构还要与映像文件目录结构保持一致!
而且语言版本,比如zh-CN、zh-TW、en-US语言版本自适应!呵呵……

点评

发出来参观参观.  详情 回复 发表于 2025-2-7 19:33
回复

使用道具 举报

19#
 楼主| 发表于 2025-2-7 19:13:48 | 只看该作者

谢谢,好像也不行.
set source_folder=C:\Windows\System32\zh-CN
set file_type=*.mui  
dir /B /S %source_folder%\%file_type% > files.txt
列出所有mui文件,用BC对比的笨办法搞定了.
回复

使用道具 举报

18#
发表于 2025-2-7 19:13:41 | 只看该作者
youxia1220 发表于 2025-2-7 19:04
手搓PE,给dll,exe,cpl等文件找配对的mui文件.


牛逼的

回复

使用道具 举报

17#
 楼主| 发表于 2025-2-7 19:04:14 | 只看该作者
martin313 发表于 2025-2-7 16:45
这个肯定要自己修改完善,或者反馈错误给AI啊

话说楼主这个是用作啥的呢

手搓PE,给dll,exe,cpl等文件找配对的mui文件.

点评

嘿嘿,亏你提醒,我的批处理少了对cpl的处理。马上加上,嘿嘿……  详情 回复 发表于 2025-2-8 11:11
那我感觉这个问题还不够复杂化 我前几天让deepseek干的活,比你这个复杂了。就是根据提供的txt文件,比如按下述清单 Windows\System32\appwiz.cpl Windows\System32\desk.cpl Windows\System32\bthprops.cpl  详情 回复 发表于 2025-2-7 19:26
牛逼的  详情 回复 发表于 2025-2-7 19:13
回复

使用道具 举报

16#
发表于 2025-2-7 18:25:42 来自手机 | 只看该作者
youxia1220 发表于 2025-2-7 12:42
谢谢
!刚刚还和同事说,怎么不问问AI,您还真的问AI了.

试试自己去问
回复

使用道具 举报

15#
发表于 2025-2-7 17:10:22 | 只看该作者
cutebe 发表于 2025-2-7 16:47
::文本拖入批
@echo off
cd.>%~dp0返回列表.txt


牛逼啊

点评

谢谢,好像也不行. set source_folder=C:\Windows\System32\zh-CN set file_type=*.mui dir /B /S %source_folder%\%file_type% > files.txt 列出所有mui文件,用BC对比的笨办法搞定了.  详情 回复 发表于 2025-2-7 19:13
回复

使用道具 举报

14#
发表于 2025-2-7 16:47:12 | 只看该作者

系统盘符如果不是C:则修改一下

本帖最后由 cutebe 于 2025-2-7 16:48 编辑

::文本拖入批
@echo off
cd.>%~dp0返回列表.txt
pushd C:\Windows\System32\zh-CN
for /f "delims=" %%m in ('type "%~1"')do (
  dir /b/a-d "%%m.mui"
)>>%~dp0返回列表.txt

点评

牛逼啊  详情 回复 发表于 2025-2-7 17:10
回复

使用道具 举报

13#
发表于 2025-2-7 16:45:27 | 只看该作者
youxia1220 发表于 2025-2-7 15:09
谢谢!好像不行啊?


这个肯定要自己修改完善,或者反馈错误给AI啊

话说楼主这个是用作啥的呢

点评

手搓PE,给dll,exe,cpl等文件找配对的mui文件.  详情 回复 发表于 2025-2-7 19:04
回复

使用道具 举报

12#
发表于 2025-2-7 16:38:11 | 只看该作者

那你把错误信息多反馈给它几次,它就能给你调试好
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-2-21 18:36

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表